我注意到某个数据库中存在假设索引。我四处搜索,似乎这种类型的索引是由Tuning Advisor创建的,并不总是被删除。
有几个主题,包括有关如何清除/删除这些索引的官方文档,但我无法找到这些索引是否对服务器本身有任何影响。
我使用下面的脚本检查的是没有关于它们的大小信息:
SELECT OBJECT_NAME(I.[object_id]) AS TableName
,I.[name] AS IndexName
,I.[index_id] AS IndexID
,8 * SUM(A.[used_pages]) AS 'Indexsize(KB)'
FROM [sys].[indexes] AS I
INNER JOIN [sys].[partitions] AS P
ON P.[object_id] = I.[object_id]
AND P.[index_id] = I.[index_id]
INNER JOIN [sys].[allocation_units] AS A
ON A.[container_id] = P.[partition_id]
WHERE I.[is_hypothetical] = 1
GROUP BY I.[object_id]
,I.[index_id]
,I.[name]
ORDER BY 8 * SUM(A.[used_pages]) DESC
有了它们,我决定检查是否有一些关于它们的使用信息,以便留下经常使用的这些,但再次没有返回。(我使用了本文中的“现有索引使用统计信息” )。
谁能告诉为什么保留这些索引是错误的,如果我可以定义应该保留哪些索引?