meta données pour cette page
  •  

Ceci est une ancienne révision du document !


INDEX

  • Fragmentation
SELECT S.name as 'Schema',
T.name as 'Table',
I.name as 'Index',
DDIPS.avg_fragmentation_in_percent,
DDIPS.page_count
FROM sys.dm_db_index_physical_stats (DB_ID(), NULL, NULL, NULL, NULL) AS DDIPS
INNER JOIN sys.tables T on T.object_id = DDIPS.object_id
INNER JOIN sys.schemas S on T.schema_id = S.schema_id
INNER JOIN sys.indexes I ON I.object_id = DDIPS.object_id
AND DDIPS.index_id = I.index_id
WHERE DDIPS.database_id = DB_ID()
and I.name is not null
AND DDIPS.avg_fragmentation_in_percent > 0
ORDER BY DDIPS.avg_fragmentation_in_percent desc
  • entre 15% et 20% de défragmentation ⇒ REORGANIZE
  • au dessus de 30% de défragmentation ⇒ REBUILD
  • Rebuild (drop et recréé l'index)
--Basic Rebuild Command
ALTER INDEX Index_Name ON Table_Name REBUILD
 
--REBUILD Index with ONLINE OPTION (enterprise)
ALTER INDEX Index_Name ON Table_Name REBUILD WITH(ONLINE=ON)
  • Reorganized (ne drop pas l'index, restructure, ne touche pas aux statistiques, se fait toujours ONLINE)
ALTER INDEX IX_OrderTracking_SalesOrderID ON Sales.OrderTracking REORGANIZE