
| 国内第一本真正意义上从工作经验出发,以作者的心得体会全面论述Oracle数据库性能优化的书籍。 作者内心经历的表白,站在全局角度对性能做分析,而不是拘泥于具体的技术细节,呈现给读者一种新的阅读思路。 书中涉及很多新的性能话题,比如执行计划,bind peeking,并行执行,10046及10053事件,AWR报告等,基本上涵盖了所有Oracle数据库性能方面的知识。 |
| 谭怀远,副总工,DBA团队负责人,在国内属于较早进入专职DBA岗位的人。是国内著名数据库论坛ITPUB的资深版主,论坛id alantany。有10年的Oracle DBA工作经验,从Oracle 8开始进入数据库领域,从Oracle 8到Oracle 8i,Oracle 9i,Oracle 10g,见证了中国DBA职业的发展历程。作者对数据库的性能优化有独到的见解,颇擅长于海量数据数据库的设计管理及优化工作。 .. << 查看详细 |
| 第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 update30 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章 hint109 6.1 和优化器相关的hint115 6.1.1 all_rows和first_rows(cbo)115 6.1.2 rule hint117 6.2 访问路径相关的hint117 6.2.1 full hint118 6.2.2 index hint118 6.2.3 no_index hint118 6.2.4 index_desc hint119 6.2.5 index_combine hint119 6.2.6 index_ffs119 6.2.7 index_join120 6.2.8 index_ss hint120 6.3 表关联顺序的hint125 6.3.1 leading hint125 6.3.2 ordered hint126 6.4 表关联操作的hint127 6.4.1 use_hash,use_nl和use_merge hint127 6.4.2 no_use_hash hint132 6.4.3 no_use_merge hint133 6.4.4 no_use_nl hint133 6.5 并行执行相关的hint134 6.5.1 parallel hint134 6.5.2 no_parallel hint134 6.6 其他方面的一些hint135 6.6.1 append hint135 6.6.2 dynamic_sampling hint135 6.6.3 driving_site hint136 6.6.4 cache hint136 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 直接加载和redo216 8.7.2 直接加载和索引219 8.7.3 直接加载和并行221 8.7.4 直接加载和sql*loader226 第9章 变量绑定232 9.1 什么是变量绑定,为什么要做变量绑定232 9.2 为什么说oltp必须要求变量绑定而olap不应该绑定变量241 9.3 bind peaking248 第10章 sql_trace和10046事件254 10.1 sql_trace254 10.2 tkprof工具256 10.3 10046事件268 第11章 10053事件276 第12章 性能视图和性能参数294 12.1 性能视图294 12.1.1 v$sql295 12.1.2 v$sql_shared_cursor300 12.1.3 v$session305 12.1.4 v$sessstat309 12.1.5 v$session_wait310 12.2 性能参数312 12.2.1 cursor_sharing313 12.2.2 db_file_multiblock_read_count328 12.2.3 pga_aggregate_target和sga_target334 12.2.4 optimizer_dynamic_sampling334 第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 |
商品评论(0条)