天天看點

管理Oracle統計資訊

 在CBO(基于代價的優化器模式)條件下,SQL語句的執行計劃由統計資訊來決定,若沒有統計資訊則會采取動态采樣的方式決定執行計劃!可以說統計資訊關乎sql的執行計劃是否正确,屬于sql執行的指導思想,oracle的初始化參數statistics_level控制收集統計資訊的級别,有三個參數值:

BASIC :收集基本的統計資訊

TYPICAL:收集大部分統計資訊(資料庫的預設設定)

ALL:收集全部統計資訊

統計資訊包含:

行統計資訊(user_tables):行數(NUM_ROWS),塊數(BLOCKS),行平均長度(AVG_ROW_LEN);

列統計資訊(user_tab_columns):列中唯一值的數量(NUM_DISTINCT),NULL值的數量(NUM_NULLS),資料分布(HISTOGRAM);         

索引統計(user_index):--葉塊數量(LEAF_BLOCKS),等級(BLEVEL),聚簇因子(CLUSTERING_FACTOR);

統計資訊的收集時間由時間視窗來排程!

管理Oracle統計資訊
管理Oracle統計資訊

 一:10g關閉自動收集統計資訊任務

二:11g關閉自動收集統計資訊任務

查詢

三:手動收集統計資訊,采樣10%,并行度為8,METHOD_OPT選項代表收集index列分布情況,并生成直方圖

四:檢視表或索引的統計資訊

五:導出統計資訊

六:删除統計資訊

七:導入統計資訊

八:異機導入,首先需要将HR_STAT_BAK表通過expdp/impdp方式導入到其他oracle伺服器上

九:鎖定與解鎖統計資訊