|
dbms_stats包里最常用的就是如下4个存储过程:
gather_table_stats:用于收集目标表、目标表的列和目标表上的索引的统计信息。
gather_index_stats:用于收集指定索引的统计信息。
gather_schema_stats:用于收集指定schema下所有对象的统计信息。
gather_database_stats:用于收集全库所有对象的统计信息。
1、对表收集统计信息,并且以估算模式,采样的比例为15%
exec dbms_stats.gather_table_stats(ownname=>'SCHEMA',tabname=>'TAB_NAME',estimate_percent=>15,method_opt=<'FOR TABLE',cascade=<false);
2、以计算模式收集索引的统计信息
exec dbms_stats.gather_index_stats(ownname=>'SCHEMA',indname=>'IDX_NAME',estimate_percent=>100);
3、删除表、表的所有列、表的所有索引的统计信息
exec dbms_stats.delete_table_stats(ownname=>'SCHEMA',tabname=>'TAB_NAME');
4、一次性以计算模式收集表、表的所有列和该表所有索引的统计信息
exec dbms_stats.gather_table_stats(ownname=>'SCHEMA',tabname=>'TAB_NAME',estimate_percent=>100,cascade=>true);
|
|