图书介绍
Oracle Database10g性能调整与优化PDF|Epub|txt|kindle电子书版本网盘下载
![Oracle Database10g性能调整与优化](https://www.shukui.net/cover/27/30177778.jpg)
- (美)尼米克(Niemiec,R.J.)著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302189121
- 出版时间:2009
- 标注页数:869页
- 文件大小:247MB
- 文件页数:895页
- 主题词:关系数据库-数据库管理系统,Oracle 10g
PDF下载
下载说明
Oracle Database10g性能调整与优化PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 Oracle Database 10g新功能介绍(针对DBA和开发人员)1
1.1安装改进3
1.2 SYSAUX表空间3
1.3自动存储管理4
1.4集群就绪服务(CRS)5
1.5服务器生成的警报6
1.6自动工作量仓库(AWR)7
1.7自动数据库诊断监控程序(ADDM)7
1.8 SQL调整顾问9
1.9自动共享内存管理(ASMM)10
1.10闪回恢复区11
1.11回收站12
1.12恢复管理器的改动13
1.13透明数据加密(10gR2)14
1.14 LogMiner的改动15
1.15 新的DBMS_STATS选项16
1.16跟踪增强17
1.17 DBMS_SCHEDULER18
1.18默认的(永久)表空间19
1.19临时表空间组20
1.20重命名表空间20
1.21大文件表空间21
1.22收缩段21
1.23数据泵(Data Pump)22
1.24跨平台的可移植表空间23
1.25写入外部表23
1.26自动撤消保留调整24
1.27包括新信息的V$SESSION24
1.28 OEM的改动25
1.29网格控制25
1.30 10g版本中的新后台进程26
1.31版本比较表26
1.32新特性回顾30
1.33参考文档31
第2章 基本的索引原理(针对DBA和初级开发人员)32
2.1基本的索引概念33
2.2组合索引35
2.3限制索引36
使用不等于运算符(<>、!=)37
使用IS NULL或IS NOT NULL37
使用函数38
比较不匹配的数据类型39
2.4选择性40
2.5集群因子(Clustering Factor)40
2.6二元高度(binary height)41
2.7使用直方图42
2.8快速全局扫描43
2.9跳跃式扫描44
2.10索引的类型45
B树索引45
位图索引46
HASH索引48
索引组织表49
反转键索引50
基于函数的索引50
分区索引51
位图连接索引53
2.11快速重建索引54
2.12技巧回顾55
2.13参考文档56
第3章 磁盘实现方法和ASM(针对DBA)57
3.1成为规范的磁盘阵列58
使用磁盘阵列改进性能和可用性58
所需的磁盘数量59
可用的RAID级别59
更新的RAID 560
3.2安装和维护传统文件系统61
3.3在硬件磁盘之间分布关键数据文件62
分开存储数据和索引文件62
避免I/O磁盘争用63
通过移动数据文件来均衡文件I/O64
3.4本地托管的表空间65
创建本地托管的表空间65
把字典托管的表空间迁移66
到本地托管的表空间66
Oracle大文件表空间67
Oracle托管文件67
3.5 ASM简介68
I/O角色之间的通信69
ASM实例70
ASM init.ora参数70
ASM的安装70
ASM参数和SGA调整71
ASM和权限71
ASM磁盘72
ASM和多路径73
ASM磁盘组74
ASM磁盘组和数据库76
ASM冗余和故障组76
Oracle Database 10gRelease 2中新的空间相关列78
集群同步服务78
数据库实例和ASM78
使用ASM进行数据库合并和集群化79
支持ASM的数据库进程80
大文件和ASM80
支持ASM的数据库init.ora参数80
ASM和数据库部署最佳实践81
ASM存储管理和分配81
ASM重新平衡和重新分布82
3.6使用分区来避免磁盘争用84
获得关于分区的更多信息86
其他类型的分区86
其他分区选项89
3.7使用索引分区91
3.8导出分区92
3.9消除碎片92
使用正确的盘区大小93
创建一个新表空间并把数据移到其中93
导出和重新导入表94
正确设定比例以避免链化现象95
自动段空间管理96
重建数据库97
3.10增加日志文件尺寸和LOG_CHECKPOINT_INTERVAL以提高速度97
确定重做日志文件的大小是否存在问题98
确定日志文件的大小和检查点的时间间隔98
3.11闪回恢复100
3.12增加恢复的可能性:在每次批处理后提交101
3.13使用回滚段101
避免回滚段之间的争用101
监控回滚段的等待和争用102
增加回滚段102
把大的事务隔离到它们自己的回滚段上102
更简便的方法:UNDO表空间103
监控UNDO空间104
3.14结束有问题的会话104
3.15不要在SYSTEM或SYSAUX表空间中执行排序105
3.16在不同磁盘和控制器上存放多个控制文件106
3.17对写操作频繁的数据使用裸设备来提高I/O107
使用裸设备的好处107
使用裸设备的缺点107
3.18磁盘I/O的其他注意事项和提示107
3.19设计阶段需要注意的问题108
3.20技巧回顾108
3.21参考文档110
第4章 用初始参数调整数据库(针对DBA)111
4.1标识重要的初始参数112
4.2不用重启就修改初始参数113
4.3用Enterprise Manager查看初始参数114
4.4调整DB_CACHE_SIZE来提高性能115
在调整DB_CACHE_SIZE时使用V$DB_CACHE_ADVICE117
保证数据缓存命中率超过95%118
监控V$SQLAREA视图以查找较慢的查询118
4.5设定DB_BLOCK_SIZE来反映数据读取量的大小121
调整SHARED_POOL_SIZE以优化性能122
使用Oracle的多个缓冲池131
调整PGA_AGGREGATE_TARGET以优化对内存的应用133
修改SGA大小以避免分页和交换134
了解基于成本的优化134
创建足够的调度程序135
25个重要的初始化参数136
查找未归档的初始参数138
了解典型的服务器139
典型的服务器模式140
调整Oracle Application数据库141
4.6技巧回顾142
4.7参考文档143
第5章 企业管理器和网格控制(针对DBA和开发人员)144
5.1企业管理器(EM)基础145
5.2从All Targets和其他分组开始148
5.3 Policies (Violations)选项卡151
5.4监控数据库152
Database Administration选项卡160
Database Administration选项卡:Tablespace161
Database Administration选项卡:实例级别164
Database Administration选项卡:All InitializationParameters164
Database Administration选项卡:Manage OptimizerStatistics165
Database Administration选项卡(实例级别):169
Database Maintenance选项卡169
Database Topology选项卡170
Database Performance选项卡172
5.5监控主机180
5.6监控应用服务器182
5.7监控Web应用程序186
5.8 Deployments选项卡(补丁选项)189
5.9 Jobs选项卡191
5.10 Reports选项卡192
5.11自动存储管理的性能195
5.12小结197
5.13技巧回顾197
5.14参考文档198
第6章 使用EXPLAIN和STOREDOUTLINES(针对DBA和开发人员)199
6.1 Oracle的SQL TRACE实用程序200
对简单查询使用SQL TRACE的简单步骤200
TRACE输出部分205
更复杂的TKPROF输出206
深入探讨TKPROF输出207
使用DBMS_MONITOR(10g的新特性)209
使用TRCSESS将多个跟踪文件保存到一个文件中(10g的新特性)211
单独使用EXPLAINPLAN212
EXPLAIN PLAN——从上至下读取和从下至上读取215
阅读EXPLAIN PLAN216
使用DBMS_XPLAN220
另一种EXPLAIN PLAN输出方法:构建树结构221
另一个使用树的例子222
在开发产品中利用TRACE/EXPLAIN发现有问题的查询225
PLAN_TABLE表中的重要列225
Oracle支持的一些有用的程序包227
适用于未记录入档的TRACE操作的初始参数227
使用存储纲要229
使用Plan Stabiliry(存储纲要)233
6.2技巧回顾236
第7章 基本的提示语法(针对DBA和开发人员)238
7.1最常用的提示239
谨慎使用提示240
首先修正设计方案240
7.2可用的提示和分组241
改变执行路径241
使用访问方法提示241
使用查询转换提示242
使用连接操作提示242
使用并行执行243
其他提示243
7.3指定提示244
7.4指定多个提示245
7.5使用别名时,提示别名而不是表名245
7.6使用提示245
使用FIRST_ROWS提示246
使用ALL_ROWS提示247
使用FULL提示247
使用INDEX提示248
使用NO_INDEX提示249
使用INDEX_JOIN提示250
使用INDEX_COMBINE提示251
使用INDEX_ASC提示251
使用INDEX_DESC提示252
使用INDEX_FFS提示252
使用ORDERED提示253
使用LEADING提示254
使用NO_EXPAND提示254
使用DRIVING_SITE提示255
使用USE_MERGE提示256
使用USE_NL提示257
使用USE_HASH提示257
使用PUSH_SUBQ提示258
使用PARALLEL提示259
使用NO_PARALLEL提示260
使用APPEND提示260
使用NOAPPEND提示261
使用CACHE提示261
使用NOCACHE提示262
使用CLUSTER提示262
使用HASH提示263
使用CURSOR_SHARING_EXACT提示263
使用QB_NAME提示264
7.7其他一些提示和注意事项264
7.8使用提示可能遇到的问题265
7.9提示一览表266
7.10技巧回顾267
7.11参考文档268
第8章 调整查询(针对开发人员和初级DBA)270
8.1调整哪些查询?查询V$SQLAREA271
在V$SQLAREA视图中选出最占用资源的查询271
在V$SQL视图中选出最占用资源的查询272
8.2选出最占用资源的会话和查询的新10g视图273
从V$SESSMETRIC视图中选出当前最占用资源的会话273
查看可用的AWR快照274
从DBA_HIST_SQLSTAT视图中选出最占用资源的查询274
从dba_hist_sqlstat视图中选择查询文本275
从DBA_HIST_SQL_PLAN视图中选出查询执行计划275
8.3确定何时使用索引276
8.4遗忘索引277
8.5创建索引277
8.6查看表上的索引278
8.7修正差的索引279
8.8在删除索引时保持谨慎280
8.9对SELECT和WHERE中的列使用索引280
8.10使用快速全局扫描282
8.11使查询魔术般加速282
8.12在内存中缓存表283
8.13使用多个索引(利用最佳选择性)284
8.14使用索引合并286
8.15 处理受限制的索引287
8.16使用基于函数的索引288
8.17了解“古怪”的OR289
8.18使用EXISTS函数290
8.19表就是视图291
8.20 SQL和“大一统”理论292
8.21 Oracle Database 10g中的调整修改292
8.22 10g自动SQL调整292
保证调整用户能访问API293
创建调整任务293
查看顾问日志中的任务293
执行SQL调整任务294
查看调整任务的状态294
显示SQL调整顾问报告294
检查报告输出294
8.23技巧回顾297
8.24参考文档298
第9章 表的连接和其他高级调整技术(针对DBA和开发人员)299
9.1连接方法300
嵌套循环连接301
排序合并连接302
集群连接303
散列连接303
索引连接304
9.2表连接的初始化参数306
排序合并与散列连接参数307
9.3双表连接:等尺寸表(基于成本)307
9.4双表索引连接:等尺寸表(基于成本)310
9.5强制执行特殊的连接方法312
9.6在多表连接中除去连接记录(侯选行)315
9.7在大小不同的表间进行双表连接316
9.8三表连接(基于成本)319
9.9位图连接索引321
9.10第三方性能调整工具327
9.11调整分布式查询330
9.12一切就绪332
9.13各种调整技术摘要333
外部表333
数据快照太旧:开发人员的编程难题337
设置事件以转储每次等待338
使用EXISTS操作符有效缩短时间339
9.14在块级别进行调整341
9.15使用简单的数学方法调整性能349
传统的数学分析349
方法论的七个步骤349
模式分析355
数学方法总结360
9.16连接调整:关系模型与对象关系模型的性能360
使用的模型362
结果362
总结370
9.17技巧回顾372
9.18参考文档372
第10章 使用PL/SQL提高性能(针对DBA和开发人员)374
10.1使用DBMS_APPLICATION_INFO进行实时监控376
10.2在RAC环境中为实时监控使用自定义包代替DBMS_APPLICATION_INFO378
10.3在数据库的表中记录计时信息390
10.4减少PL/SQL程序的单元迭代和迭代的时间392
10.5使用ROWID进行迭代处理395
10.6将数据类型、IF语句的排列和PLS_INTEGER396
确保比较运算中的数据类型相同397
根据条件出现的频率来排序IF条件398
使用PLS_INTEGERPL/SQL数据类型进行整数运算399
10.7减少对SYSDATE的调用400
10.8减少MOD函数的使用401
10.9共享池和固定PL/SQL对象403
将PL/SQL对象语句固定(缓存)到内存中404
固定所有的包404
10.10标识需要固定的PL/SQL对象405
10.11使用和修改DBMS_SHARED_POOL.SIZES406
10.12从DBA_OBJECT_SIZE中获取详细的对象信息407
10.13发现无效的对象408
10.14发现已禁用的触发器409
10.15将PL/SQL表用于快速参考表查询410
10.16查找和调整所使用对象的SQL413
10.17在处理DATE数据类型时使用时间信息416
10.18调整和测试PL/SQL418
10.19了解PL/SQL对象定位的含义419
10.20使用回滚段打开大型游标420
10.21使用数据库的临时表来提高性能422
10.22集成用户跟踪机制以定位执行位置422
10.23限制动态SQL的使用423
10.24使用管道表函数来建立复杂结果集423
10.25别管调试命令428
10.26为初学者提供的例子434
创建PL/SQL代码434
创建过程435
执行PL/SQL过程435
创建函数435
在SQL中执行GET_CUST_NAME函数436
创建数据包436
在数据库触发器中使用PL/SQL436
10.27技巧回顾436
10.28参考文档438
第11章 调整RAC和使用并行特性439
11.1实时应用集群(RAC)440
并行数据库440
Oracle RAC的体系结构441
Oracle RAC系统的内部工作方式443
SCN处理445
RAC性能调整概述446
RAC等待事件和互连统计数据448
集群互连调整——硬件等级453
使用企业管理器网格控制调整RAC459
11.2并行操作的基本概念465
11.3并行DML和DDL语句和操作466
11.4 Oracle 9i的并行DML语句和操作467
11.5并行处理和分区467
11.6操作内部和操作之间的并行处理468
11.7使用并行操作生成表和索引的示例470
11.8并行DML语句和示例472
并行DML的约束条件473
并行DML语句示例473
11.9通过V$视图监控并行操作475
V$PQ_TQSTAT475
V$PQ_SYSSTAT476
V$PQ_SESSTAT478
11.10在并行操作时使用EXPLAIN PLAN和AUTOTRACE479
11.11调整并行执行和Oracle 9i初始化参数484
11.12并行加载487
11.13性能比较和监控并行操作488
11.14优化RAC中的并行操作490
并行操作的目标490
RAC并行使用模型491
初始化参数491
查看并行统计数据的V$视图491
并行配置和相关基线测试492
并行查询测试示例492
Create Table As495
索引构建495
性能考虑因素和小结495
11.15 使用并行处理时的其他注意事项495
11.16技巧回顾496
11.17参考文档498
第12章 V$视图(针对开发人员和DBA)499
12.1 V$视图的创建和访问500
获得所有V$视图的数量和列表503
查找用于创建V$视图的X$表504
查找组成DBA_视图的底层对象505
使用有帮助的V$脚本507
内存分配摘要(V$SGA)511
内存分配的细节(V$SGASTAT)512
在V$PARAMETER中发现init.ora的设置513
测定数据的命中率(V$SYSSTAT)514
测定数据字典的命中率(V$ROWCACHE)515
测定共享SQL和PL/SQL的命中率(V$LIBRARYCACHE)516
确定需要固定的PL/SQL对象517
通过V$SQLAREA查找有问题的查询518
检查用户的当前操作及其使用的资源519
查找用户正在访问的对象520
使用索引522
确定锁定问题523
关闭有问题的会话525
查找使用多会话的用户526
查找磁盘I/O问题527
查找回滚段的内容530
检查空闲列表是否充足532
检查角色和权限设置533
等待事件V$视图535
一些主要的V$视图种类538
12.2技巧回顾544
12.3参考文档546
第13章 X$表(针对高级DBA)547
13.1 X$表介绍548
有关X$表的误解549
授权查看X$表550
13.2创建V$视图和X$表551
13.3获得所有X$表的列表553
13.4获得所有的X$索引列表554
13.5对X$表和索引使用提示555
13.6共享池556
13.7监控共享池的查询557
ORA-04031错误558
空间分配过大而引起的争用558
共享池碎片化559
共享池和/或Java池中空闲内存过低560
库缓存命中率561
大量的硬分析563
闩锁等待和/或休眠564
其他调整选项565
13.8重做566
13.9初始化参数566
13.10缓存/数据块570
缓存状态570
占用数据块缓存的段572
热数据块/闩锁争用和等待事件574
13.11实例/数据库578
13.12高效使用X$表及其策略579
13.13相关的Oracle内部机制580
跟踪580
DBMS_TRACE包583
事件584
转储584
ORADEBUG585
trcsess工具587
13.14阅读跟踪文件588
等待信息和响应时间590
递归调用591
模块信息591
提交592
Unmap592
绑定变量592
错误593
13.15 X$表的分组593
13.16 X$表及相关的非V$固定视图607
13.17常见的X$表连接609
Oracle 10gR1中新增的X$表611
Oracle 10gR2中新增的X$表612
13.18 X$表的命名约定613
13.19技巧回顾621
13.20参考文档621
第14章 使用STATSPACK和AWR报表调整等待和闩锁623
14.1 1 0gR2 (10.2) STATSPACK的新特性624
14.2 10gR1 (10.1) STATSPACK的新特性625
14.3安装STATSPACK625
PERFSTAT账户的安全管理626
安装之后627
搜集统计数据627
运行统计数据报表630
14.4自动工作量仓库(AWR)和AWR报表631
手动管理AWR632
AWR自动快照633
AWR快照报表633
在Oracle企业管理器网格控制中运行AWR报表635
14.5解释STATSPACK的输出结果638
报表头信息638
负载简档639
实例的效率641
首要等待事件644
Oracle Bugs652
Oracle影子进程的生命周期652
RAC等待事件和互连统计数据653
首要的SQL语句654
实例活动统计数据656
表空间和文件I/O的统计数据661
段统计数据662
其他的内存统计数据663
撤消统计数据665
闩锁统计数据666
在块级别调整和查看(高级)672
数据字典和库缓存的统计数据675
SGA内存统计数据677
非默认的初始化参数678
14.6 AWR报表和STATSPACK输出结果中需680
管理STATSPACK数据680
升级STATSPACK681
删除STATSPACK681
14.7新ADDM报表的快速注释681
14.8 10gR2脚本683
14.9技巧回顾684
14.10参考文档685
第15章 执行快速系统检查(针对DBA)686
15.1总体性能指数(TPI)687
15.2教育性能指数(EPI)688
15.3系统性能指数(SPI)689
15.4内存性能指数(MPI)691
缓冲区命中率692
数据字典缓存命中率694
库缓存命中率694
PGA内存排序命中率695
空闲的数据缓冲区的比例696
最浪费内存的前10个语句占所有语句的比例697
调整前25个最浪费内存的语句698
固定/缓存对象699
15.5磁盘性能指数(DPI)700
调整滥用磁盘读操作的25个主要语句700
最浪费磁盘读操作的前10个语句占所有语句的比例701
表/索引的分离703
关键任务表管理703
分离关键的Oracle文件704
自动撤消管理704
临时段的平衡707
15.6总体性能指数(TPI)708
15.7系统综合检查的示例709
评级系统709
系统检查评级分类的示例710
需要立刻解决的问题项711
其他需要解决的问题项712
15.8系统信息列表712
与内存有关的值712
与磁盘有关的值713
与CPU有关的值713
与备份和恢复有关的信息713
命名约定和/或标准以及安全信息714
DBA知识评级714
15.9 TPI和系统检查需要考虑的其他项715
15.10技巧回顾715
15.11参考文档716
第16章 使用UNIX工具监控系统(针对DBA)717
16.1 Unix/Linux工具718
16.2使用sar命令监控CPU的使用718
sar-u(检查CPU沉重程度)718
sar-d命令(查找I/O问题)720
sar-b命令(检查缓存)722
sar-q命令(检查运行队列和交换队列的长度)723
16.3使用sar命令和vmstat命令监控分页/交换723
使用sar命令的-w选项报告分页活动724
使用sar命令的-c选项报告交换和切换活动724
使用sar命令的-r选项报告空闲内存和空闲交换725
使用sar命令的-g选项报告分页活动725
使用sar命令的-wpgr选项726
16.4使用top命令发现系统中最影响性能的用户728
16.5使用uptime命令监控CPU的负载729
16.6使用mpstat命令确定CPU瓶颈730
16.7将ps命令与已选出的V$视图相结合731
16.8使用iostat命令确定磁盘I/O瓶颈734
为磁盘驱动器sd15、sd16、sd17和sd18使用iostat的-d选项734
使用iostat的-D选项734
使用iostat的-x选项734
将iostat的-x选项与shell脚本中的逻辑相结合735
16.9使用ipcs命令确定共享内存的使用情况736
16.10使用vmstat命令监控系统的负载737
16.11监控磁盘空闲空间738
16.12监控网络性能740
使用spray命令监控742
使用nfsstat-c监控网络性能743
使用netstat监控网络性能744
显示可调整参数的当前值745
修改配置信息文件747
影响性能的其他因素747
16.13技巧回顾749
16.14参考文档749
附录A 主要的初始化参数(针对DBA)750
A.1不再支持的初始化参数751
A.2不建议使用的初始化参数752
A.3 25个最重要的初始化参数752
A.4必须记住的最重要的10个初始化参数754
A.5最重要的13个未入档的初始化参数755
A.6已入档的初始化参数列表(V$PARAMETER)757
A.7未入档的初始化参数列表(x$ksppi/x$ksppcv)767
A.8 Oracle应用程序11i建议(注释:216205.1)767
A.9不写书的10个重要原因772
A.10技巧回顾773
A.11参考文档773
附录B V$视图(针对DBA和开发人员)774
B.1 V$视图、GV$视图和X$表的创建775
B.2 Oracle 10g (10.2.0.1)GV$和V$视图列表775
B.3 Oracle 10g (10.2.0.1)V$视图781
B.4用于创建V$视图的X$表的Oracle 10g脚本786
附录C X$表(针对DBA)843
C.1按名称排序的Oracle 10g X$表844
C.2 Oracle 10gX$索引850
C.3交叉引用X$表的Oracle 10gV$视图862
C.4 GV$视图没有引用的Oracle10g X$表866