首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >sys.dm_db_index_usage_stats中的信息可靠吗?

sys.dm_db_index_usage_stats中的信息可靠吗?
EN

Database Administration用户
提问于 2014-08-12 08:40:49
回答 2查看 6.8K关注 0票数 11

我正在存档一个没有文档的旧系统中的数据。幸运的我..。

我想知道这些表是什么时候创建的,最后一次访问等等。我能相信这个查询会给出正确的答案吗?还是首先需要检查一些参数?Server 2008 R2:

代码语言:javascript
运行
复制
 SELECT t.Name AS Tabelname, p.rows AS NoOfRows, MAX(us.last_user_lookup) AS LastUsed, t.create_date AS CreatedDate
FROM sys.tables t
INNER JOIN      
    sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN 
    sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
LEFT JOIN --A lot of the tables did not have any records in this table
    sys.dm_db_index_usage_stats as us ON t.OBJECT_ID = us.OBJECT_ID
GROUP BY t.Name, p.rows, create_date
ORDER BY MAX(us.last_user_lookup) DESC
EN

回答 2

Database Administration用户

回答已采纳

发布于 2014-08-12 08:50:02

不是的。

sys.dm_db_index_usage_stat视图最多只反映上次数据库启动(最后一个实例启动,或上次数据库联机时)以来的数据。此外,在记忆压力下,条目可以清除。它会给出准确的正数(如果一个表有非零的统计量,那么它就被使用了),但是它可能会给出假的负数(统计数据中的0用法可能不反映实际使用情况)。还有很多系统每周只使用一次特定的表,每月一次,甚至每年一次。

票数 17
EN

Database Administration用户

发布于 2014-08-12 10:06:14

这是你不能盲目依赖车管所sys.dm_index_usage_stats的另一个原因。在索引仅用于与索引列关联的统计信息后,sys.dm_db_index_usage_stats不会更新。保罗在他的链接中展示了这一点。

什么sys.dm_索引_用法_车管所没有告诉你

你也会喜欢阅读

本文介绍索引使用统计数据车管所

此外,我不认为通过使用DMV,有一个完美的方法,以确定何时是最后使用表。我相信使用Profiler跟踪或扩展事件跟踪将是更好的选择。虽然分析器可以导致负载,但是服务器端跟踪是一个很好的选择。

票数 4
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/73745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档