Oracle-内部对象统计信息

系统对象统计信息用来票数oracle数据库里的一些内部表(X$系列表)的详细信息。实际上X$系列表实际上只是Oracle自定义的内存结构,X$表里面会存储与示例相关的各类信息。数据库

在数据库运行的阶段,X$是被频繁访问的。oracle

一次性收集全部X$表的内部对象统计信息:对象

SQL> exec dbms_stats.gather_fixed_objects_stats();内存

一次性删除全部X$表的内部对象统计信息:资源

SQL> exec dbms_stats.delete_fixed_objects_stats();table

 

固然也能够经过dbms_stats包来对单个对象收集统计信息:object

SQL> exec dbms_stats.gather_table_stats('SYS','X$KCCRSR',cascade=>true,estimate_percent=>100);im

相应的,也能够对单个内部表对象删除统计信息:统计

SQL> dbms_stats.delete_table_stats('SYS','X$KCCRSR');数据

 

不建议频繁的收集内部对象统计信息,由于在收集内部对象统计信息的时候oracle会持有相关对象的Latch(mutex)会损耗CPU资源,对于系统而言压力将很是大。

若是诊断出来是内部对象统计信息的问题,能够经过收集单个内部对象统计信息,而不要一次性收集全部内部对象统计信息。

相关文章
相关标签/搜索