Reconstruction / réorganisation d'index
SQL ServerMaintenanceCommande
-- Rebuild (high fragmentation > 30%). ONLINE requires Enterprise:
ALTER INDEX IX_Customer_Email ON dbo.Customer
REBUILD WITH (ONLINE = ON, MAXDOP = 4, SORT_IN_TEMPDB = ON);
-- All indexes of a table:
ALTER INDEX ALL ON dbo.Customer REBUILD WITH (FILLFACTOR = 90);
-- Reorganize (moderate fragmentation 5-30%, always online, can be stopped):
ALTER INDEX IX_Customer_Email ON dbo.Customer REORGANIZE;Ce que fait la commande
REBUILD recrée l'index de zéro (supprime complètement la fragmentation, actualise les statistiques) ; REORGANIZE compacte le niveau feuille sur place (léger, non bloquant).
Quand l'utiliser
REORGANIZE pour 5-30 % de fragmentation, REBUILD au-delà de 30 %. Pendant les fenêtres de maintenance pour les grandes tables.
Attention
ONLINE = ON n'est disponible qu'en Enterprise/Developer ; utilisez OFF en Standard (la table est verrouillée). REBUILD génère beaucoup de journal et nécessite de l'espace. MAXDOP et SORT_IN_TEMPDB influent sur l'utilisation des ressources.