[Oracle] Oracle收集統計資訊的取樣比例
Oracle收集統計資訊的取樣比例:
SELECT owner, segment_name, ROUND (SUM (bytes) / 1024 / 1024) size_mb,
case when sum(bytes)/1024/1024 < 1 then '100'
when sum(bytes)/1024/1024 >= 1 and sum(bytes)/1024/1024 < 1000 then '20'
when sum(bytes)/1024/1024 >= 1000 and sum(bytes)/1024/1024 < 100000 then '5'
when sum(bytes)/1024/1024 >= 100000 then '1' end estimate_percent
FROM dba_segments
WHERE segment_type like 'TABLE%' GROUP BY owner, segment_name
exec dbms_stats.gather_database_stats(estimate_percent=>100,degree=>4,cascade=>true,granularity=>'ALL');
exec dbms_stats.gather_table_stats(username,'tablename',estimate_percent=>100,degree=>4,cascade=>true,granularity=>'ALL');
user: username
tablename : 指定的tablename
estimate_percent: 取樣比例,資料量大采樣比例小,資料量小取樣比例大.預設為100
degree : 收集時候的並行度.預設為null
cascade: 表示是否收集表對應的索引、列等的統計資訊
granularity : ① ALL:採集Global、partition、subpartition等粒度統計資訊。
② AUTO:根據分割槽型別,由Oracle確定統計資訊採集粒度。
③ PARTITION:只採集partition粒度統計資訊。
④ SUBPARTITION:只採集subpartition粒度統計資訊
SELECT owner, segment_name, ROUND (SUM (bytes) / 1024 / 1024) size_mb,
case when sum(bytes)/1024/1024 < 1 then '100'
when sum(bytes)/1024/1024 >= 1 and sum(bytes)/1024/1024 < 1000 then '20'
when sum(bytes)/1024/1024 >= 1000 and sum(bytes)/1024/1024 < 100000 then '5'
when sum(bytes)/1024/1024 >= 100000 then '1' end estimate_percent
FROM dba_segments
WHERE segment_type like 'TABLE%' GROUP BY owner, segment_name
exec dbms_stats.gather_database_stats(estimate_percent=>100,degree=>4,cascade=>true,granularity=>'ALL');
exec dbms_stats.gather_table_stats(username,'tablename',estimate_percent=>100,degree=>4,cascade=>true,granularity=>'ALL');
user: username
tablename : 指定的tablename
estimate_percent: 取樣比例,資料量大采樣比例小,資料量小取樣比例大.預設為100
degree : 收集時候的並行度.預設為null
cascade: 表示是否收集表對應的索引、列等的統計資訊
granularity : ① ALL:採集Global、partition、subpartition等粒度統計資訊。
② AUTO:根據分割槽型別,由Oracle確定統計資訊採集粒度。
③ PARTITION:只採集partition粒度統計資訊。
④ SUBPARTITION:只採集subpartition粒度統計資訊
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24237320/viewspace-2145994/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle收集統計資訊Oracle
- Oracle 統計資訊收集Oracle
- 收集oracle統計資訊Oracle
- ORACLE 收集統計資訊Oracle
- 【統計資訊】Oracle常用的收集統計資訊方式Oracle
- ORACLE 統計資訊的收集與管理Oracle
- Oracle統計資訊自動收集Oracle
- oracle收集統計資訊job停止Oracle
- ORACLE統計抽樣預設比例Oracle
- oracle統計資訊--直方圖的收集:Oracle直方圖
- 重新收集oracle表的統計資訊Oracle
- Oracle統計資訊的收集和維護Oracle
- oracle 統計資訊檢視與收集Oracle
- oracle 11g統計資訊收集Oracle
- 【Oracle】11g Oracle自動收集統計資訊Oracle
- Oracle運維指令碼-收集統計資訊Oracle運維指令碼
- 關於oracle自動收集統計資訊Oracle
- Oracle10g 統計資訊的自動收集Oracle
- Oracle的自動統計資訊不收集直方圖的資訊Oracle直方圖
- Oracle11g 統計資訊-----統計資訊自動收集任務Oracle
- Oracle11g 統計資訊——統計資訊自動收集任務Oracle
- Oracle 11g手工收集表統計資訊Oracle
- Oracle 11g 統計資訊收集指令碼Oracle指令碼
- ORACLE 11g 自動收集統計資訊Oracle
- [統計資訊系列7] Oracle 11g的自動統計資訊收集Oracle
- Oracle收集統計資訊之NO_INVALIDATE引數Oracle
- Oracle 11g 之自動收集統計資訊Oracle
- Oracle檢視查詢慢之統計資訊收集Oracle
- ORACLE10g自動收集CBO統計資訊Oracle
- oracle統計資訊 使用dbms_stats包收集統計資料Oracle
- [zt] Oracle10g 自動收集收集CBO統計資訊設定Oracle
- 【統計資訊】Oracle統計資訊Oracle
- ORACLE19c新特性-實時統計資訊收集Oracle
- Oracle 11g無法自動收集統計資訊Oracle
- oracle 11g自動收集統計資訊介紹Oracle
- oracle 統計資訊過期判斷和自動收集Oracle
- Oracle 判斷 並 手動收集 統計資訊 指令碼Oracle指令碼
- Oracle的統計資訊Oracle