加快建立索引(create / rebuild index) 的幾點

tolywang發表於2009-06-01

總結一下: 
1。 使用並行引數,8個CPU, 可以用parallel 6 ,最多佔用6個CPU, 正常情況下沒問題(前提是其他應用沒有佔超過2個CPU的資源)
      例子:     alter index  index_name   rebuild  [online]  parallel 6  nologging ;  
2。 nologging, 絕對應該使用,會使速度大幅上升。(減少大量redo log)
3。 PGA, 普通的auto pga最大才100M, 顯然沒有達到最好效能,應該使用manual pga
alter session set workarea_size_policy=manual;
alter session set  hash_area_size=100000; -- hash_area_size 預設情況下會自動根據sort_area_size*2來調,導致sort_area_size不能超過1G, 手動設了就沒問題了。
alter session set sort_area_size=2000000000; -- 在系統可用記憶體足夠的情況下,最大可以到2G
4。 設定高一點的db_file_multiblock_read_count 也有利於提高I/O效能。保證足夠大的db_cache_size可以避免free_buffer_wait的出現
5。 可以透過v$session_longops 來監視進度

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-607954/,如需轉載,請註明出處,否則將追究法律責任。

相關文章