其他分享
首页 > 其他分享> > Fixed Table统计信息

Fixed Table统计信息

作者:互联网

Fixed Table统计信息

2 YEARS AGO 

Oracle有大量的内部视图供DBA使用,这些视图底层表以X$开头,Fixed Objects指的是这些以x$开头的表(下文中称为基表)及它们的索引。
很多v$开头的视图基表都是x$表,包括动态性能视图,管理视图,如dba_free_space等,因此,这些fixed objects的统计信息就显得极其重要。

1. Fixed objects统计信息重要性

优化器在生成执行计划的时候依赖于这些基表的统计信息,如果这些基表的统计信息缺失,不像用户对象的统计信息缺失,Oracle会使用dynamic sampling,优化器在这些缺失统计信息的基表上,会使用预设的默认值进行执行计划的评估。在这种情况下,执行计划可能是极其糟糕的。因此,可能存在查询某些动态性能视图或者数据字典时,出现很慢的情况。

例如, X$KTFBUE记录了数据文件、extent的位图等信息,在查询dba_free_space的时候,会使用到这个基表,如果这个表的统计信息为0,则有可能导致查询dba_free_space很慢. 当这个基表缺失统计信息时,该表的行数默认为10万行。

1
2
3
4
5
6
7
8
9
column database_creation format a18
column last_analyzed format a18
select dbid
,to_char(created,'dd.mm.yyyy hh24:mi') database_creation
,version
,(select to_char(max(last_analyzed),'dd.mm.yyyy hh24:mi') last_analyzed
from dba_tab_statistics
where object_type='FIXED TABLE') last_analyzed
from v$database,v$instance;

2. Fixed tables统计信息对数据库的影响

对dba_extents, v$access, V$RMAN_BACKUP_JOB_DETAILS, V$RMAN_STATUS,DBA_FREE_SPACE等视图有很大影响,很多时候查询这些视图很慢,极大可能就是因为基表统计信息缺失或者存在错误的统计信息。



Reference:
How to Gather Statistics on Objects Owned by the 'SYS' User and 'Fixed' Objects (Doc ID 457926.1)
Fixed Objects Statistics (GATHER_FIXED_OBJECTS_STATS) Considerations (Doc ID 798257.1)
Best Practices for Gathering Optimizer Statistics with Oracle Database 12c Release 2
ORA-01555 Caused By Auto Execute Of Job "SYS"."PMO_DEFERRED_GIDX_MAINT_JOB" (Doc ID 2523018.1)
Database SQL Tuning Guide - Gathering Statistics for Fixed Objects

EOF

标签:基表,收集,视图,信息,Table,Fixed,统计
来源: https://www.cnblogs.com/yaoyangding/p/15575296.html