【TUNE_ORACLE】定製化收集統計資訊SQL參考
實驗環境
搭建平臺:VMware Workstation
OS:RHEL 6.10
Grid&DB:Oracle 11.2.0.4
SQL參考
declare
cursor stale_table is
select owner,
segment_name,
case
when segment_size < 1 then
100
when segment_size >= 1 and segment_size <= 5 then
50
when segment_size > 5 then --超過5G的大表收集比例一般不超過30%
30
end as percent,
4 as degree
from (select owner,
segment_name,
sum(bytes / 1024 / 1024 / 1024) segment_size
from dba_segments
where owner = 'TEST'
and segment_name in
(select table_name
from dba_tab_statistics
where (last_analyzed is null or stale_stats = 'YES')
and owner = 'TEST')
group by owner, segment_name);
begin
dbms_stats.flush_database_monitoring_info;
for stale in stale_table loop
dbms_stats.gather_table_stats(ownname => stale.owner,
tabname => stale.segment_name,
estimate_percent => stale.percent,
method_opt => 'for all columns size repeat', --根據實際情況選擇該引數
degree => stale.degree,
cascade => true);
end loop;
end;
/
單獨拆分成一條關鍵語句:
SQL> exec dbms_stats.gather_table_stats(ownname => 'test',tabname => 'tab',estimate_percent => 50,method_opt => 'for all columns size auto',no_invalidate => false,degree => 6,cascade => true);
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69992972/viewspace-2784605/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【TUNE_ORACLE】定製化執行計劃SQL參考OracleSQL
- 【TUNE_ORACLE】檢查統計資訊是否過期SQL參考OracleSQL
- 【TUNE_ORACLE】檢視錶,列和索引的統計資訊SQL參考Oracle索引SQL
- 【TUNE_ORACLE】ROWID切片SQL參考OracleSQL
- 微課sql最佳化(3)、統計資訊收集(2)-如何收集統計資訊SQL
- 【TUNE_ORACLE】列出索引被哪些SQL引用的SQL參考Oracle索引SQL
- 微課sql最佳化(8)、統計資訊收集(6)-統計資訊查詢SQL
- 【TUNE_ORACLE】列出走了Filter的SQL參考OracleFilterSQL
- 【TUNE_ORACLE】檢視系統CPU和IO情況SQL參考OracleSQL
- SQL優化參考SQL優化
- 【TUNE_ORACLE】列出LOOP套LOOP的PL/SQL程式碼SQL參考OracleOOPSQL
- 【TUNE_ORACLE】列出有標量子查詢的SQL參考OracleSQL
- 【TUNE_ORACLE】列出走了INDEX FULL SCAN的SQL參考OracleIndexSQL
- 【TUNE_ORACLE】列出走了TABLE ACCESS FULL的SQL參考OracleSQL
- 【TUNE_ORACLE】列出走了INDEX SKIP SCAN的SQL參考OracleIndexSQL
- 【TUNE_ORACLE】查出所有有“select *”語句的SQL參考OracleSQL
- 【TUNE_ORACLE】檢視錶的總塊數SQL參考OracleSQL
- 【TUNE_ORACLE】檢視索引的叢集因子SQL參考Oracle索引SQL
- 【TUNE_ORACLE】列出帶有自定義函式的SQL的SQL參考Oracle函式SQL
- 【TUNE_ORACLE】列出SQL謂詞中需要建立索引的列SQL參考OracleSQL索引
- 微課sql最佳化(2)-為什麼需要收集統計資訊SQL
- 【TUNE_ORACLE】列出走了笛卡爾積的SQL參考OracleSQL
- 手動收集——收集統計資訊
- 【TUNE_ORACLE】列出必須建立直方圖的列SQL參考Oracle直方圖SQL
- 【TUNE_ORACLE】列出走了低選擇性索引的SQL參考Oracle索引SQL
- 【TUNE_ORACLE】列出一條SQL中多次出現的表名的SQL參考OracleSQL
- Oracle收集統計資訊Oracle
- 收集統計資訊方案
- 微課sql最佳化(7)、統計資訊收集(5)-關於直方圖SQL直方圖
- 【統計資訊】Oracle常用的收集統計資訊方式Oracle
- 收集全庫統計資訊
- 微課sql最佳化(6)、統計資訊收集(4)-關於動態取樣SQL
- 資訊系統安全運維整改參考運維
- 【TUNE_ORACLE】列出返回行數較多的巢狀迴圈(NESTED LOOPS)SQL的SQL參考Oracle巢狀OOPSQL
- 微課sql最佳化(5)、統計資訊收集(3)-關於預設取樣率SQL
- SQL優化之統計資訊和索引SQL優化索引
- 6 收集資料庫統計資訊資料庫
- UI | 一組精美的視覺化資料資訊圖設計參考UI視覺化