确保oracle数据库sql语句高效执行的优化总结(二)

确保oracle数据库sql语句高效执行的优化总结(二)

ID:6321898

大小:83.64 KB

页数:6页

时间:2018-01-10

确保oracle数据库sql语句高效执行的优化总结(二)_第1页
确保oracle数据库sql语句高效执行的优化总结(二)_第2页
确保oracle数据库sql语句高效执行的优化总结(二)_第3页
确保oracle数据库sql语句高效执行的优化总结(二)_第4页
确保oracle数据库sql语句高效执行的优化总结(二)_第5页
资源描述:

《确保oracle数据库sql语句高效执行的优化总结(二)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、【接确保Oracle数据库sql语句高效执行的优化总结(一)】2.410053和10046事件2.4.110053事件我们在查看一条SQL的执行计划的时候,只能看到CBO最终告诉我们的执行计划结果,但是不知道CBO是根据什么来做的。如果遇到了执行计划失真,如:一个SQL语句,很明显oracle应该使用索引,但是执行计划却没有使用索引。无法进行分析判断。10053事件就提供了这样的功能。它产生的trace文件提供了Oracle如何选择执行计划,为什么会得到这样的执行计划信息。对于10053事件的t

2、race文件,我们只能直接阅读原始的trace文件,不能使用tkprof工具来处理,tkprof工具只能用来处理sql_trace和10046事件产生的trace文件。10053事件有两个级别:ØLevel2:2级是1级的一个子集,它包含以下内容:ColumnstatisticsSingleAccessPathsJoinCostsTableJoinsConsideredJoinMethodsConsidered(NL/MS/HA)ØLevel1:1级比2级更详细,它包含2级的所有内容,在加如下内

3、容:ParametersusedbytheoptimizerIndexstatistics启用10053事件:ALTERSESSIONSETEVENTS='10053tracenamecontextforever,level1';ALTERSESSIONSETEVENTS='10053tracenamecontextforever,level2';关闭10053事件:ALTERSESSIONSETEVENTS'10053tracenamecontextoff';说明:(1)sqlplus中打开a

4、utotrace看到的执行计划实际上是用explainplan命令得到的,explainplan命令不会进行bindpeeking。应该通过v$sql_plan查看SQL的真实的执行计划。(2)10053只对CBO有效,而且如果一个sql语句已经解析过,就不会产生新的trace信息。2.4.210046事件10046事件主要用来跟踪SQL语句,它并不是ORACLE官方提供给用户的命令,在官方文档上也找不到事件的说明信息。但是用的却比较多,因为10046事件获取SQL的信息比SQL_TRACE更多

5、。更有利于我们对SQL的判断。10046事件按照收集信息内容,可以分成4个级别:ØLevel1:等同于SQL_TRACE的功能ØLevel4:在Level1的基础上增加收集绑定变量的信息ØLevel8:在Level1的基础上增加等待事件的信息ØLevel12:等同于Level4+Level8,即同时收集绑定变量信息和等待事件信息。启动10046事件SQL>altersessionsetevents‘10046tracenamecontextforever,level12’;关闭10046事件SQ

6、L>altersessionsetevents‘10046tracenamecontextoff’;也可以使用oradebug命令来执行10046:SYS@anqing1(rac1)>oradebugsetmypidSYS@anqing1(rac1)>oradebugevent10046tracenamecontextforever,level8;SYS@anqing1(rac1)>oradebugevent10046tracenamecontextoff;SYS@anqing1(rac1)>o

7、radebugtracefile_name/u01/app/oracle/admin/anqing/udump/anqing1_ora_17800.trc具体的内容参考:2.5统计信息优化器收集的统计信息包括如下内容:1)TablestatisticsNumberofrowsNumberofblocksAveragerowlength2)ColumnstatisticsNumberofdistinctvalues(NDV)incolumnNumberofnullsincolumnDatadist

8、ribution(histogram)3)IndexstatisticsNumberofleafblocksLevelsClusteringfactor4)SystemstatisticsI/OperformanceandutilizationCPUperformanceandutilization统计信息收集如下数据:(1)表自身的分析:包括表中的行数,数据块数,行长等信息。(2)列的分析:包括列值的重复数,列上的空值,数据在列上的分布情况。(3)索引的分析:包括索引叶块的数量,索引的深度,索

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。