怎麼樣快速重整索引
通過rebuild語句,可以快速重整或移動索引到别的表空間
文法為
alter index index_name rebuild tablespace ts_name
storage(......);
如果要快速重建整個使用者下的索引,可以用如下腳本,當然,需要根據你自己的情況做相應修改
SQL> set heading off
SQL> set feedback off
SQL> spool d:\index.sql
SQL> SELECT 'alter index ' || index_name || ' rebuild '
||'tablespace INDEXES storage(initial 256K next 256K pctincrease 0);'
FROM all_indexes
WHERE ( tablespace_name != 'INDEXES'
OR next_extent != ( 256 * 1024 )
)
AND owner = USER
SQL>spool off
另外一個合并索引的語句是
alter index index_name coalesce
這個語句僅僅是合并索引中同一級的leaf block,消耗不大,對于有些索引中存在大量空間浪費的情況下,有一些作用。