第1章 数据库性能管理 1
1.1 对数据库性能管理的访问 2
1.2 按项目阶段进行性能管理 2
1.3 定期数据库调优 3
1.4 操作系统级调优 4
1.4.1 CPU调优 4
1.4.2 内存调优 6
1.4.3 I/O调优 8
1.4.4 网络调优 10
1.5 DBMS调优 11
1.5.1 DBMS调优步骤 11
1.5.2 DBMS实例调优 13
1.5.3 存储空间管理(storage management) 14
1.5.4 数据I/O 15
1.5.5 分区 16
1.5.6 应用程序性能 17
第2章 SQL调优 21
2.1 了解优化器 23
2.1.1 SQL query处理过程 24
2.2 基于规则的优化器 30
2.3 基于成本的优化器 31
2.4 优化器提示 35
第3章 索引 41
3.1 索引类型 42
3.1.1 B树索引 42
3.1.2 BITMAP索引 44
3.1.3 倒序索引 45
3.1.4 降序索引 45
3.1.5 IOT索引 45
3.1.6 基于函数的索引 46
3.2 了解索引和表访问 47
3.3 设计索引时的注意事项 49
3.4 索引的正确使用 53
3.5 组合索引 54
3.5.1 组合索引的列顺序 54
3.5.2 组合索引的使用标准 54
3.6 扫描范围的决策条件和验证条件 55
3.7 无法使用索引的情形 56
3.8 索引列的转换 57
3.9 不定形式条件 58
3.10 NULL比较和内部转换 60
第4章 连接的种类和顺序 63
4.1 NESTED LOOPJOIN 65
4.2 SORT MERGE JOIN 67
4.3 HASH JOIN 69
第5章 部分范围处理 71
5.1 部分范围处理 72
5.1.1 部分范围处理和全范围处理的定义 73
5.1.2 部分范围处理的使用原则 74
5.2 查找MAX和MIN值 77
5.3 索引和ROWNUM的使用例子 78
5.4 按输入值变更执行计划 80
5.5 正确使用SQL 83
5.6 索引生成标准 85
第6章 数据库调优快速指南 87
6.1 SQL调优的重要性 88
6.2 SQL调优的必要性 88
6.3 创建索引与改善性能的关系 89
6.4 索引的定义 89
6.5 创建太多索引对性能的影响 89
6.6 创建索引时最有效的列 90
6.7 使用索引时的注意事项 90
6.8 优化器不使用索引的情形 91
6.9 优化器的执行计划 91
6.10 优化器的种类 91
6.11 进行表连接的方式 92
6.12 连接规则 92
6.13 连接方法 93
6.14 部分范围处理 94
参考文献 95