Index rebuild / reorganize
SQL ServerBakımKomut
-- Yeniden insa (yuksek fragmentasyon > %30). ONLINE Enterprise'da:
ALTER INDEX IX_Musteri_Email ON dbo.Musteri
REBUILD WITH (ONLINE = ON, MAXDOP = 4, SORT_IN_TEMPDB = ON);
-- Bir tablonun tum indeksleri:
ALTER INDEX ALL ON dbo.Musteri REBUILD WITH (FILLFACTOR = 90);
-- Reorganize (orta fragmentasyon %5-30, her zaman online, iptal edilebilir):
ALTER INDEX IX_Musteri_Email ON dbo.Musteri REORGANIZE;Ne yapar?
REBUILD index'i baştan oluşturur (fragmentasyonu tamamen giderir, istatistikleri tazeler); REORGANIZE yaprak seviyesini yerinde sıkıştırır (hafif, kesintisiz).
Ne zaman kullanılır?
Fragmentasyon %5-30 ise REORGANIZE, >%30 ise REBUILD. Büyük tablo bakım pencerelerinde.
Dikkat
ONLINE = ON yalnızca Enterprise/Developer'da; Standard'da OFF kullan (tablo kilitlenir). REBUILD çok log üretir ve alan gerektirir. MAXDOP ve SORT_IN_TEMPDB kaynak kullanımını etkiler.