oracle案例:分析10053跟踪文件
2008-12-31 13:07:56 来源:WEB开发网不幸的是,没办法弄清楚系统的总体统计信息的收集,是采用全局样本还是单个的分区表的方式。如果有疑问,全局样本最好是查看DBA_TABLES.GLOBAL_STATS,如果为YES,则表示全局统计信息已被收集。
无直方图
为特定的列查找"No Histogram". 例子 (下述数据不是当前实例的追踪文件):
SINGLE TABLE ACCESS PATH
COLUMN: TIME_ID(DATE) Col#: 3 Table: SALES Alias: SALES
Size: 8 NDV: 1187 Nulls: 0 Density: 8.4246e-04 Min: 2450815 Max: 2452275
No Histogram: #BKT: 1
(1 uncompressed buckets and 2 endpoint values)
5. 分析小结
分析10053的过程,一般是从跟踪文件的底部往上看,再到感兴趣的区域。感兴趣的区域就是那些属于看起来有问题的执行计划的区域。
在这里列举进行10053跟踪文件分析的步骤:
1) 从文件末尾开始
确认你感兴趣的sql语句存在于跟踪文件中。如果跟踪文件中有EXPLAIN PLAN,编辑一下跟踪文件尽量便于阅读。
2)查看所选执行计划的最终成本。
3)查看产生最终成本的连接顺序
4)查看感兴趣的引起成本的连接顺序部分
5)查看连接顺序产生成本的连接类型
6)检查在步骤5中找到的连接类型的成本
a)确认用到何种访问路径
b)检查其他被拒绝的访问路径(仅适用于嵌套循环连接,在对内部行集的访问路径中,有几个访问路径产生成本)
详细分析
1.从结尾开始,从执行计划开始
在10053中获得准确的执行计划输出,很重要。有些信息在10053中会丢失,我们需要使用执行计划来得出成本计算是如何进行的结论。有时候我们会使用执行计划来调查10053或者检查我们的分析。
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接