2010-05-18 239 views
5

什麼時候應該重建索引?每晚?每週?每小時?重建SQL索引 - 何時?

+0

剛發現:http://stackoverflow.com/questions/1331236/sql-server-2005-how-often-should-you-rebuild-indexes – 0xB33F 2010-05-18 18:11:14

回答

3

運行的intelligent script (from SQL Fool)時重建/ REORG,夜間說,它將決定什麼都不做,碎片整理或重建。

基本上,你的碎片水平做到相應的最小值。

作爲一般規則,我會每天晚上親自運行它。至少我每天晚上都會重建數據。

0

從SQL Server 2005文檔:
執行ALTER INDEX ...重組​​進行碎片整理,根據下面的碎片閾值下降指標:(avg_page_space_used_in_percent < 75和> 60)或(avg_fragmentation_in_percent> 10 < 15)

執行ALTER INDEX ... REBUILD進行碎片整理,根據下面的閾值碎片落入索引:(avg_page_space_used_in_percent < 60)或(avg_fragmentation_in_percent> 15)

1

這取決於指標的碎裂程度。

如果avg_fragmentation_in_percent值> 5%且< = 30%,那麼您應該重組索引。 如果avg_fragmentation_in_percent值大於30%,那麼您應該重建索引。