重庆思庄Oracle、Redhat认证学习论坛

标题: oracle用dbms_stats包收集统计信息 [打印本页]

作者: miss_puff    时间: 2018-3-20 14:39
标题: oracle用dbms_stats包收集统计信息
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);





欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2