На просторах инета нашёл запрос, который позволяет смотреть использование индексов с момента запуска ms sql
Запрос выдал
Сервер стартовал
Я правильно понимаю что эти индексы не нужны? Они только зря занимают место на диске? Зря на них тратятся ресурсы для обновления, переиндексации, обновления статистики и т.д?
SELECT OBJECT_NAME(S.[OBJECT_ID]) AS [OBJECT NAME], I.[NAME] AS [INDEX NAME], USER_SEEKS, USER_SCANS, USER_LOOKUPS, USER_UPDATES FROM SYS.DM_DB_INDEX_USAGE_STATS AS S INNER JOIN SYS.INDEXES AS I ON I.[OBJECT_ID] = S.[OBJECT_ID] AND I.INDEX_ID = S.INDEX_ID WHERE OBJECTPROPERTY(S.[OBJECT_ID],'IsUserTable') = 1 and user_seeks=0 and user_scans=0 and user_lookups=0 --and user_updates=0 order by [OBJECT NAME]
Запрос выдал
(825 rows affected)
Сервер стартовал
sqlserver_start_time
-----------------------
2019-04-04 22:47:01.867
Я правильно понимаю что эти индексы не нужны? Они только зря занимают место на диске? Зря на них тратятся ресурсы для обновления, переиндексации, обновления статистики и т.д?