《让Oracle跑得更快 Oracle 10g性能分析与优化思路》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:谭怀远著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2010
  • ISBN:9787121113253
  • 页数:438 页
图书介绍:在这本书里读者将会学到作者在性能优化方面的一些思路和思考,一些故障处理的方法和原则,这些东西是作者在实践中长期积累的心得体会,当读者掌握了一些处理问题的基本思路之后,成为一名合格的DBA就是一件轻而易举的事情了。本书适合读者:数据库管理员和Oracle用户。

第1章 引起数据库性能问题的因素 1

1.1 软件设计对数据库的影响 1

1.1.1 软件架构设计对数据库性能的影响 1

1.1.2 软件代码的编写对数据库性能的影响 2

1.2 数据库的设计 8

1.2.1 OLTP数据库 9

1.2.2 OLAP数据库 10

1.3 数据库的硬件设计 14

1.3.1 存储容量 15

1.3.2 存储的物理设计 16

1.3.3 数据的安全 17

1.4 小结 19

第2章 锁和阻塞 20

2.1 关于锁 20

2.2 锁和阻塞 22

2.3 引起阻塞的其他情况 30

2.3.1 select for update 30

2.3.2 外键和索引 36

第3章 Latch和等待 44

3.1 共享池中的Latch争用 45

3.2 数据缓冲池Latch争用 54

3.2.1 表数据块 54

3.2.2 索引数据块 59

3.2.3 索引根数据块 62

3.2.4 段头数据块 65

第4章 优化器 66

4.1 RBO基于规则的优化器 66

4.2 CBO基于成本的优化器 69

第5章 执行计划 85

5.1 Cardinality(基数) 85

5.2 SQL的执行计划 94

第6章 Hint 109

6.1 和优化器相关的Hint 115

6.1.1 all_rows和first_rows(CBO) 115

6.1.2 RULE Hint 117

6.2 访问路径相关的Hint 117

6.2.1 FULL Hint 118

6.2.2 INDEX Hint 118

6.2.3 NO_INDEX Hint 118

6.2.4 INDEX_DESC Hint 119

6.2.5 INDEX_COMBINE Hint 119

6.2.6 INDEX_FFS 119

6.2.7 INDEX_JOIN 120

6.2.8 INDEX_SS Hint 120

6.3 表关联顺序的Hint 125

6.3.1 LEADING Hint 125

6.3.2 ORDERED Hint 126

6.4 表关联操作的Hint 127

6.4.1 USE_HASH,USE_NL和USE_MERGE Hint 127

6.4.2 NO_USE_HASH Hint 132

6.4.3 NO_USE_MERGE Hint 133

6.4.4 NO_USE_NL Hint 133

6.5 并行执行相关的Hint 134

6.5.1 PARALLEL Hint 134

6.5.2 NO_PARALLEL Hint 134

6.6 其他方面的一些Hint 135

6.6.1 APPEND Hint 135

6.6.2 DYNAMIC_SAMPLING Hint 135

6.6.3 DRIVING_SITE Hint 136

6.6.4 CACHE Hint 136

6.7 小结 136

第7章 分析及动态采样 138

7.1 直方图 141

7.2 DBMS_STATS包 147

7.3 动态采样 176

7.3.1 什么是动态采样 176

7.3.2 动态采样的级别 182

7.3.3 什么时候使用动态采样? 185

7.4 小结 185

第8章 并行执行 186

8.1 并行和OLAP系统 187

8.2 并行处理的机制 189

8.3 读懂一个并行处理的执行计划 191

8.4 一个很常见的并行执行等待事件 192

8.5 并行执行的适用范围 194

8.5.1 并行查询 194

8.5.2 并行DDL操作 195

8.5.3 并行DML操作 203

8.6 并行执行的设定 210

8.6.1 并行相关的初始化参数 210

8.6.2 并行度的设定 211

8.7 直接加载 213

8.7.1 直接加载和REDO 216

8.7.2 直接加载和索引 219

8.7.3 直接加载和并行 221

8.7.4 直接加载和SQL*LOADER 226

第9章 变量绑定 232

9.1 什么是变量绑定,为什么要做变量绑定 232

9.2 为什么说OLTP必须要求变量绑定而OLAP不应该绑定变量 241

9.3 bind peaking 248

第10章 SQL_TRACE和10046事件 254

10.1 SQL_TRACE 254

10.2 TKPROF工具 256

10.3 10046事件 268

第11章 10053事件 276

第12章 性能视图和性能参数 294

12.1 性能视图 294

12.1.1 V$SQL 295

12.1.2 V$SQL_SHARED_CURSOR 300

12.1.3 v$session 305

12.1.4 V$sessstat 309

12.1.5 V$session_wait 310

12.2 性能参数 312

12.2.1 Cursor_sharing 313

12.2.2 DB_FILE_MULTIBLOCK_READ_COUNT 328

12.2.3 PGA_AGGREGATE_TARGET和SGA_TARGET 334

12.2.4 OPTIMIZER_DYNAMIC_SAMPLING 334

第13章 性能报告 335

13.1 AWR性能报告 335

13.1.1 生成AWR性能报告 337

13.1.2 AWR性能报告分析 342

13.2 Statspack性能报告 386

13.2.1 Statspack的安装 386

13.2.2 Statspack性能采集 391

13.3 ASH性能报告 394

13.3.1 生成ASH性能报告 395

13.3.2 ASH性能报告分析 405

13.4 小结 416

附录A 常见的等待事件 417

后记 关于数据库的学习方法 434