Я использовал SQL Server 2012 как свою продукцию с более чем 2 лет. В этот период я добавил некоторые индексы, но никогда не касался фрагментации. Честно говоря, я не знал о фрагментации индекса. Но сегодня, когда я бежал,Будет ли восстановление индексов остановить мою производственную базу данных?
SELECT
dbschemas.[name] as 'Schema',
dbtables.[name] as 'Table',
dbindexes.[name] as 'Index',
indexstats.avg_fragmentation_in_percent,
indexstats.page_count
FROM
sys.dm_db_index_physical_stats (DB_ID(), NULL, NULL, NULL, NULL) AS indexstats
INNER JOIN
sys.tables dbtables on dbtables.[object_id] = indexstats.[object_id]
INNER JOIN
sys.schemas dbschemas on dbtables.[schema_id] = dbschemas.[schema_id]
INNER JOIN
sys.indexes AS dbindexes ON dbindexes.[object_id] = indexstats.[object_id]
AND indexstats.index_id = dbindexes.index_id
WHERE
indexstats.database_id = DB_ID()
ORDER BY
indexstats.avg_fragmentation_in_percent DESC
я получил следующие результаты:
Schema Table Index avg_fragmentation_in_percent page_count
--------------------------------------------------------------------------------------------------------------
dbo ELMAH_Error IX_ELMAH_Error_App_Time_Seq 99.2438563327032 529
dbo ELMAH_Error PK_ELMAH_Error 98.8664987405542 794
dbo ProductsCountriesVariants PK__Products__3214EC270AC6A076 98 100
dbo Tags PK_Tags 91.2820512820513 195
dbo ProductGallery PK_ProductGallery 89.0909090909091 220
dbo devicecatalog IX_DeviceCatalog_NativeDeviceID 88.5964912280702 342
dbo Products IX_Products_RetailerID_ModelNumber 88.5245901639344 122
dbo Products IX_Products_RetailerID_SKU 82.7272727272727 110
--------------------------------------------------------------------------------------------------------------
Должен ли я Перестроить все индексы? Будет ли это работать с моей базой данных на производстве? Интересно, что я только что создал индекс IX_DeviceCatalog_NativeDeviceID
несколько минут назад.
Является ли ваш индекс 'IX_DeviceCatalog_NativeDeviceID' индексом в столбце' uniqueidentifier' (GUID)? –
@marc_s, no varchar (500) – user960567
@marc_s, у меня есть несколько столбцов с индексом 'NULL', но 83% от' avg_fragmentation_in_percent'. Что это значит? – user960567