统计信息

Posted wineman

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了统计信息相关的知识,希望对你有一定的参考价值。

Oracle统计信息存储在数据字典里,且从多个纬度描述了Oracle数据库中对象的详细信息。
 
1、表的统计信息     DBA_TABLES 
2、索引的统计信息    DBA_INDEXES 
3、列的统计信息    DBA_TAB_COLS 
4、系统统计信息 
5、数据字典统计信息 
6、内部对象统计信息
 
库统计信息 : exec dbms_stats.flush_database_monitoring_info;  
收集用户统计信息 exec dbms_stats.gather_schema_stats(‘ODS‘,cascade => true,degree=>16,no_invalidate => false); 
删除库统计信息:    exec dbms_stats.delete_schema_stats(‘VISE‘); 
锁定库统计信息:     exec dbms_stats.lock_schema_stats(‘VISE‘); 
解锁定库统计信息:    exec dbms_stats.UNlock_schema_stats(‘VISE‘); 
查询是否锁定库统计信息:    select owner,table_name,STATTYPE_LOCKED from dba_tab_statistics where owner=‘VISE‘;
 
表统计信息:
1、统计表信息 exec dbms_stats.gather_table_stats(ownname => ‘ODS‘,tabname => ‘SYM_RB_AGREEMENT_TERM‘,cascade => true,estimate_percent => 0.1,force=> true,no_invalidate => false);    
2、删除统计表信息: exec dbms_stats.delete_table_stats(ownname => user,tabname => ‘T1‘,cascade_indexes => true); 
3、解锁定表统计信息:  exec dbms_stats.unlock_table_stats(‘vise‘,‘B_S_NIN_CTS_ACCT_BAL‘); 
4、锁定表统计信息:  exec dbms_stats.lock_table_stats(‘VISE‘,‘B_S_NIN_CTS_ACCT_BAL‘); 
5、查询是否锁定表统计信息: select owner,table_name,STATTYPE_LOCKED from dba_tab_statistics where owner=‘VISE‘ and table_name=‘B_S_NIN_CTS_ACCT_BAL‘ ; 
6、查询是否存在表统计信息: select * from DBA_tab_col_statistics where owner=‘ODS‘ and table_name=‘B_S_NIN_CTS_ACCT_BAL‘ ;

以上是关于统计信息的主要内容,如果未能解决你的问题,请参考以下文章

[统计信息]1.Oracle统计信息概述

oracle收集统计信息无法开并行

学习笔记-----统计信息

[统计信息系列5] 系统统计信息

[统计信息系列5] 系统统计信息

Oracle里收集与查看统计信息的方法