共计 553 个字符,预计需要花费 2 分钟才能阅读完成。
环境:Oracle 11.2.0.4
采用并行的方式,快速收集全库统计信息,多用于跨版本升级之后,对全库的统计信息重新进行快速收集:
– 开启计时
set timing on
– 设置并行收集
exec dbms_stats.set_global_prefs(‘CONCURRENT’,’TRUE’);
– 开始收集全库统计信息
begin
dbms_stats.gather_database_stats(
ESTIMATE_PERCENT=>DBMS_STATS.AUTO_SAMPLE_SIZE, method_opt => ‘for all indexed columns’, cascade=>true, degree=>120);
end;
/
– 关闭并行收集
exec dbms_stats.set_global_prefs(‘CONCURRENT’,’FALSE’);
注意 degree 的值并不是设置越高就越快,同时要根据实际 CPU 具体情况来设置。
本文来自同事的经验分享,这里主要用到 dbms_stats 包的 set_global_prefs 和 gather_database_stats 过程。详见官档描述:
https://docs.oracle.com/cd/E11882_01/appdev.112/e40758/d_stats.htm
:
正文完
星哥玩云-微信公众号