1. Fixed objects是一些x$表及他们的index.
2. v$ performance视图是定义在 X$ 表之上的,比如v$sql, v$session .
3. 与正常表不同,如果没有统计信息,动态采样是不会作用于X$表的。
4. 如果没有统计信息,优化器使用预先定义的默认值,这些默认值可能没有代表性而导致次优的执行计划,从而导致性能问题。
5. Fixed object统计性能不会被统计信息收集job自动收集,必须手工收集fixed objects statistics .
使用如下语句:
BEGIN
DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;
END;
6. DBMS_STATS.GATHER_FIXED_OBJECTS_STATS与GATHER_TABLE_STATS差不多,但不会收集数据块个数,blocs总是0,因为
X$表是在内存中的结构,不会存储在磁盘。
7. 因为X$表的瞬时特性,在系统达到有“代表性”的负载时收集fixed object统计信息是非常重要的,如果你不能在高峰期
收集他们的统计信息,那么你应该在系统已经运行一段时间且类似v$datafile,v$session,v$sql,v$sql_plan等三类fixed
object表都populated,就进行收集。
8. 如果你对数据库或应用做了升级或数据库配置做了更改(改了内存大小等),建议再次收集fixed object statistics ,
因为比如做了SGA大小更改,被V$BUFFER_POOL等使用的X$表可能会发生大的变化。
Fixed Objects Statistics (GATHER_FIXED_OBJECTS_STATS) Considerations (文档 ID 798257.1)
https://blogs.oracle.com/optimizer/entry/fixed_objects_statistics_and_why
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28211342/viewspace-2128942/
,如需转载,请注明出处,否则将追究法律责任。