目 录
贺辞
序
译者序
前言
第一部分 管理数据库的规模、性能和紧急事件
第1章 管理数据库的规模、性能和紧急事件
1.1应用程序展开的螺旋周期
1.1.1阶段1:应用程序的初期使用
1.1.2阶段2:硬件升级和优化
1.1.3阶段3:重新展开
1.1.4阶段4:又一个重新展开
1.1.5主要重新展开
1.2规划应用程序展开的螺旋式周期
1.2.1降低危机水平
1.2.2管理资源需求
1.2.3管理硬件问题
1.2.4为未来做准备
第二部分 数据库增长的管理
第2章 数据库增长的规划
2.1增长配置文件
2.1.1事务相关表
2.1.2应用相关表
2.1.3商业事务处理表
2.1.4临时/接口表
2.2在规划中使用增长配置文件
第3章 内存和CPU 的优化调整问题
3.1应用的类型
3.1.1Oracl如何响应OLTP数据访问请求
3.1.2Orac le如何响应批数据访问请求
3.2如何计算命中率
3.3影响命中率的因素
3.3.1字典表活动
3.3.2临时段的活动
3.3.3回滚段的活动
3.3.4索引活动
3.3.5表扫描
3.3.6OLTP和批应用类型
3.4内存和CPU 的优化调整问题
3.5为应用选择目标命中率
3.6内存和CPU 的要求
第4章 硬件调整问题
4.1估计磁盘容量需要
4.1.1数据库内部空间
4.1.2Oracle使用的外部空间
4.1.3应用管理空间
4.1.4冗余/应急空间
4.2识别I/O瓶颈
4.3传统的硬件方法
4.3.1文件的独立
4.3.2数据分离
4.3.3使用分区
4.4如何使用RAID技术
4.4.1RAID如何工作
4.4.2什么时候使用数据分离
4.4.3什么时候使用镜像
4.4.4什么时候使用奇偶系统
4.4.5选择RAID配置
4.5裸设备和文件系统
4.6支持改变容量需求
第5章 管理数据库的内部空间
5.1数据表的类型
5.2管理区间
5.2.1Oracle如何分配区间
5.2.2考虑性能定区间的大小
5.3管理数据表
5.3.1高位标志
5.3.2在块的内部
5.3.3簇
5.4管理索引
5.5管理临时段
5.6管理回滚段
5.7管理自由空间
5.8存储参数参考资料
第6章 数据库关闭/启动工具
6.1删除或归档旧的跟踪文件和跟踪日志
6.2重新命名警报日志
6.3产生创建控制文件命令
6.4装订程序包
6.5创建拥有者-对象的位置图
6.6重新计算统计资料
6.7缩小扩展超过最佳值的回滚段
6.8执行关机/启动工具
第三部分 优化增长的数据库
第7章 性能管理
7.1从哪儿开始
7.1.1确保稳定协调的产品环境
7.1.2应用事务和查询分类
7.1.3着眼棘手的SQL
7.1.4调整特殊的长时间运行的进程和批作业
7.1.5优化对单个表的访问
7.2使用优化程序
7.2.1基于规则的优化程序
7.2.2基于开销的优化程序
7.2.3混合方法
7.2.4选择优化程序
7.2.5实现基于开销的优化程序
7.2.6添加的优化程序目标
7.3下一步往哪儿去
第8章 监控
8.1监控类型
8.2Oracle的性能统计数字问题
8.2.1值的范围
8.2.2准确性
8.2.3统计数字视图的性能
8.2.4命名
8.3收集统计数字
8.4解释统计数字
8.4.1查询处理
8.4.2事务管理
8.4.3内存和CPU的使用
8.4.4数据库管理
8.4.5用户统计数字
8.5企业管理器
8.6开发一个监控计划
第9章 环境的优化
9.1关键的init.ora参数
9.1.1DB BLOCK SIZE
9.1.2DB BLOCK BUFFERS
9.1.3SHARED POOLSIZE
9.1.4LOG BUFFER
9.1.5DBWR IO SLAVES
9.1.6 DB FILE MULTIBLOCK
READ COUNT
9.1.7 SORT -AREA -SIZE 和SORT AREA
RET AINED SIZE
9.1.8 SORT-DIRECT -WRITES
9.1.9 ROLLBACK SEGMENTS
9.2内存优化
9.2.1全部内存冲突
9.2.2设立共享内存
9.2.3设置信号灯
9.2.4管理内存交换
9.3I/O优化
9.3.1实现最优的灵活结构
9.3.2I/O分配
9.4CPU优化
9.5优化应用
第10章 解释SQL语句优化
10.1怎样为一个查询生成ExplainPlan
10.1.1解释操作次序
10.1.2在SQL*plus里自动产生解释方案
10.2操作
10.2.1在执行路径说明中使用的约定
10.2.2AND- EQU AL
10.2.3BITMAPAND BITMAPOR和BITMAP MERGE
10.2.4BITMAPCONVERSION
10.2.5BITMAPINDEX
10.2.6CONCATENATION
10.2.7CONNECTBY
10.2.8COUNT
10.2.9COUNT STOPKEY
10.2.10FILTER
10.2.11FORUPDATE
10.2.12HASHJOIN
10.2.13INDEXRANGESCAN
10.2.14INDEX UNIQUE SCAN
10.2.15INTERSECTION
10.2.16MERGEJOIN
10.2.17MINUS
10.2.18NESTEDLOOPS
10.2.19OUTERJOIN
10.2.20PROJECTION
10.2.21REMOTE
10.2.22SEQUENCE
10.2.23SORTAGGREGATE
10.2.24SORTGROUP BY
10.2.25SORTJOIN
10.2.26SORTORDERBY
10.2.27SORT UNIQUE
10.2.28TABLEACCESSBYROWID
10.2.29TABLE ACCESSCLUSTER
10.2.30TABLEACCESSFULL
10.2.31TABLEACCESSHASH
10.2.32UNION
10.2.33VIEW
10.3解释ExplainPlan的输出
10.4应用查询调整到进程调整
10.5使用提示
10.5.1All ROWS
10.5.2AND -EQUAL
10.5.3APPENDandNOAPPEND
10.5.4CACHE
10.5.5CHOOSE
10.5.6CLUSTER
10.5.7FIRST ROWS
10.5.8FULL
10.5.9HASH
10.5.10HASH AJ
10.5.11INDEX
10.5.12INDEX ASC
10.5.13INDEX COMBINE
10.5.14INDEX DESC
10.5.15INDEX FFS
10.5.16MERGE AJ
10.5.17NO MERGE
10.5.18NOCACHE
10.5.19NOPARALLEL
10.5.20ORDER ED
10.5.21PARALLEL
10.5.22PUSH SEBQ
10.5.23ROWID
10.5.24RULE
10.5.25STAR
10.5.26USE CONCAT
10.5.27USE HASH
10.5.28USE MERGE
10.5.29USE NL
第11章 13个SQL优化技巧
11.1避免无计划的全表扫描
11.1.1使用全表扫描
11.1.2怎样确保查询能使用索引
11.1.3创建索引时遇到的问题
11.2只使用选择性索引
11.2.1测量索引的选择性
11.2.2选择复合索引的主列
11.2.3在复合索引和多个单列索引间做选择
11.3管理多表联结(NESTEDLOOPS MERGE
JOIN s和 HASHJOINS)
11.3.1MERGEJOINS所涉及的步骤
11.3.2MERGEJOIN的优化含义
11.3.3怎样指定只供临时段使用的表空间
11.3.4涉及NESTEDLOOPS的步骤
11.3.5NESTEDLOOPS联结里驱动表的含义
11.3.6怎样改变联结路径
11.3.7从无选择性规则开始时会发生什么
11.3.8给联结增加更多表时会发生什么
11.3.9怎样索引有多对多关系的数据表
11.3.10哈希(散列)联结
11.3.11哈希(散列)联结的管理问题
11.3.12哈希(散列)联结的性能概述
11.3.13怎样改变数据库的设计以降低联结的数目
11.3.14管理联结
11.4管理包含视图的SQL语句
11.4.1提高视图到查询里的集成
11.4.2强制视图保持独立
11.5优化子查询
11.5.1当执行子查询时
11.5.2对返回最大值的子查询的提示
11.5.3如何组合子查询
11.5.4怎样进行存在检查
11.6使用复合的Keys/star 查询
11.6.1怎样创建星形图
11.6.2查询星形图
11.6.3传统的执行路径
11.6.4怎样创建星形查询执行路径
11.6.5星形查询的管理问题
11.7适当地索引CONNECTBY操作
11.8限制对远程表的访问
11.9管理对非常巨大的表的访问
11.9.1问题
11.9.2管理数据接近
11.9.3避免没有帮助的索引扫描
11.9.4创建充分索引的表
11.9.5创建哈希(散列)簇
11.9.6如果使用等价查询
11.9.7如果没有办法执行行接近
11.9.8如果空间分配不成问题
11.9.9创建分区表
11.9.10使用并行选项
11.10使用UNIONALL而不是UNION
11.11避免在SQL里使用PL/SQL功能调用
11.12管理赋值变量的使用
11.13回访优化过程
第四部分 先进的优化调整选项
第12章 并行选项
12.1并行选项的影响
12.2什么是选择项
12.3并行查询如何工作
12.3.1常规查询处理
12.3.2数据表扫描的并行查询处理
12.3.3排序的并行查询处理
12.4如何管理和优化调整并行查询选择项
12.4.1如何分配查询服务器进程
12.4.2如何管理查询服务器池
12.4.3在数据表层定义并行度
12.4.4使用查询提示强制并行
12.4.5如何监控并行查询选择
12.4.6了解解释方案输出
12.4.7调整并行操作
12.4.8Oracle如何确定并行度
12.4.9选择并行度的技巧
12.5附加的并行选项
12.5.1并行DML
12.5.2并行创建数据表
12.5.3并行创建索引
12.5.4并行数据加载
12.5.5并行恢复
12.5.6Oracle并行服务器
12.5.7在并行选项中选择
第13章 新的及改进的优化调整选项
13.1有关性能的变化
13.1.1直方图
13.1.2快速全索引扫描
13.1.3不可恢复和不记录的动作
13.1.4直接路径输出
13.1.5专用的临时表空间
13.1.6排序直接写
13.2对象管理的变化
13.2.1不限制最大区间数
13.2.2重新分配数据表和索引中未使用的空间
13.2.3重建快速索引
13.2.4位图索引
13.2.5用户指定的哈希簇
13.2.6分区
13.2.7存储的触发器
13.3数据库管理的变化
13.3.1可重定尺寸的数据文件
13.3.2可动态改变的init.ora参数
13.3.3表空间合并
13.3.4只读表空间
13.3.5缩小回滚段
13.3.6媒体恢复状态
13.3.7复制
13.3.8Oracle7.3补充的变化
13.3.9Oracle8补充的变化
13.3.10有关复制的问题
13.3.11多线程服务器
13.3.12延迟记录块的清除
13.3.13可伸缩的缓冲区高速缓存
13.3.14展开的RowID格式
13.3.15OID和REF产生器
13.4新的数据库管理实用程序
13.4.1TRACE
13.4.2DB VER IFY
第五部分 数据库管理的实际问题
第14章 Oracle数据库管理的实际问题
14.1问题的格式
14.2记录答案
14.3如果被难住了,怎么办
14.4通过的评分等级是什么
14.5时间限制
14.6问题
14.7问题答案表
第15章 实际问题分析
15.1回答实际问题的关键
15.2实际问题的一般分析
15.3参考资料
15.3.1综合参考资料
15.3.2备份与恢复
15.3.3资源管理
15.3.4维护与操作
15.3.5安全性
15.3.6调整与故障排除
15.3.7数据管理
15.3.8体系结构与选项
15.4问题分析
· · · · · · (
收起)