online建立索引和重建索引

2021-07-15 07:24:27 字數 1114 閱讀 4515

加online這個引數,這個引數加上以後,除了create過程中index 保持online狀態,oracle還會在create index之前等待所有dml操作結束,然後得到ddl鎖,

開始create.

sql> create index t1 on test(id) online;

一、重建索引的前提

1、表上頻繁發生update,delete操作;

2、表上發生了alter table ..move操作(move操作導致了rowid變化)。

二、重建索引的標準

1、索引重建是否有必要,一般看索引是否傾斜的嚴重,是否浪費了空間, 那應該如何才可以判斷索引是否傾斜的嚴重,是否浪費了空間, 對索引進行結構分析(如下):

sql>analyze index index_name validate structure;

2、在執行步驟1的session中查詢index_stats表,不要到別的session去查詢。

sql>select height,del_lf_rows/lf_rows from index_stats;

說明:當 查詢出來的 height>=4 或者 del_lf_rows/lf_rows>0.2 的場合 , 該索引考慮重建 。

舉例: (t_gl_assistbalance 26 萬多條資訊 )

sql> select count(*) from t_gl_assistbalance ;

輸出結果:

count(*)

265788

sql> analyze index ix_gl_asstbal_1 validate structure;

index analyzed

sql> select height,del_lf_rows/lf_rows from index_stats;

輸出結果:

height del_lf_rows/lf_rows

4 1

————————————----、

2 、直接重建:

舉例:

alter index indexname rebuild; 或alter index indexname rebuild online;

索引概述和建立索引

使用索引為了提高訪問速度 如果已有聚集索引,在建立聚集索引就會提示已有聚集索引是否刪除在建立新的聚集索引 對上面sql語句的個人理解 1索引型別 唯一性聚集非聚集 乙個資料表中可以包含乙個聚集索引和多個非聚集索引 索引聚集適合案範圍查詢,費聚集索引並不是存放物理位置,而是每條記錄的物理指標費聚集索引...

索引概述和建立索引

使用索引為了提高訪問速度 如果已有聚集索引,在建立聚集索引就會提示已有聚集索引是否刪除在建立新的聚集索引 對上面sql語句的個人理解 1索引型別 唯一性聚集非聚集 乙個資料表中可以包含乙個聚集索引和多個非聚集索引 索引聚集適合案範圍查詢,費聚集索引並不是存放物理位置,而是每條記錄的物理指標費聚集索引...

oracle 索引失效 建立及重建

兩三個月沒有做資料分析了,今天一分析,竟然發現很多索引 約30 失效。失效原因大致有以下幾種 在sql loader 載入過程中會維護索引,由於資料量比較大,在sql loader 載入過程中出現異常情況,導致oracle 來不及維護索引,導致索引處於失效狀態,影響查詢和載入。異常情況主要有 在載入...