Oracle快速收集全庫統計信息
阿新 • • 發佈:2018-12-01
sca dev ts包 method stats 計時 com eth size
環境: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
Oracle快速收集全庫統計信息