Oracle统计信息的收集、管理与清除
EYGLE EYGLE OWNER 11364 4.378425024777
EYGLE EYGLE OWNER 10912 4.327723735598
EYGLE EYGLE OWNER 9 3.492486153566
EYGLE EYGLE OWNER 55 3.544214255849
EYGLE EYGLE OWNER 295 3.600792664974
EYGLE EYGLE OWNER 303 4.118597800700
EYGLE EYGLE SECONDARY 0 4.049991549657
EYGLE EYGLE SECONDARY 1 4.049991549657
EYGLE EYGLE STATUS 0 4.478619304731
EYGLE EYGLE STATUS 1 4.478619304731
EYGLE EYGLE SUBOBJECT_NAME 0 4.163573043437
EYGLE EYGLE SUBOBJECT_NAME 1 4.533986999644
EYGLE EYGLE TEMPORARY 1 4.621144204096
EYGLE EYGLE TEMPORARY 0 4.049991549657
EYGLE EYGLE TIMESTAMP 1 2.605922956775
EYGLE EYGLE TIMESTAMP 0 2.555831764971
35 rows selected
这种现象就来源于 _column_tracking_level 的特性监控,如果不希望发生这样的信息收集,则可以调整这个隐含的参数。
此时再使用delete_column_stats就可以删除这些字段的统计信息:
SQL> exec dbms_stats.delete_column_stats(user,\'EYGLE\',\'OWNER\');
PL/SQL procedure successfully completed
也可以针对这个列使用如下命令清除这个字段的柱状图但是保留基本统计信息:
SQL> exec dbms_stats.gather_table_stats(user,\'EYGLE\',method_opt=>\'for columns owner size 1\');
PL/SQL procedure successfully completed
通常推荐使用\'for columns owner size 1\' 而不是delete_column_stats去清除列的统计信息,完全删除列的基本统计信息在某些Bug的作用下,可能会导致优化器计算的异常。
在统计信息收集时,必须注意到这些选项和后台动作,否则就可能出现和面对很多莫名其妙的问题。![]()
建议继续学习:
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:eygle@eygle.com(eygle) 来源: Oracle Life
- 标签: 统计信息
- 发布时间:2010-10-26 22:11:57
-
[1145] WordPress插件开发 -- 在插件使用 -
[57] 解决 nginx 反向代理网页首尾出现神秘字 -
[53] Java开发岗位面试题归类汇总 -
[45] web开发设计人员不可不用的在线web工具和 -
[33] Rax 系列教程(长列表) -
[33] 手机产品设计方向 -
[32] 一句话crontab实现防ssh暴力破解 -
[30] 如何建立合适的索引? -
[28] 程序员疫苗:代码注入 -
[27] oracle技术方面的路线
