我们怎么知道DMV在Microsoft sql server中刷新了

时间:2013-03-07 15:06:44

标签: sql-server-2008 sql-server-2008-r2 sql-server-2012

您好我正在使用SQL Server,我想知道DMV是否刷新了什么时候?

1 个答案:

答案 0 :(得分:3)

您是否尝试重置DMV中的计数器? Because what you're doing is you're clearing the plan cache in that DB。按照你说你想做的事情来说,这不会有什么帮助。

现在,如果您真的想要重置DMV性能计数器,那么您将需要使用DBCC SQLPERF('sys.dmv_name_here',CLEAR);。我想你可以验证它运行的方式是在运行SQLPERF之前和之后查询DMV,并注意到计数器实际上已经丢弃。

-

修改

-

经过反思,您可能会在刷新计划缓存时尝试将计划缓存统计信息归零。当您清空计划时,我假设计划句柄将被删除或将变得无用。我必须参加一个变更控制会议,所以我还不能测试这个理论,但是当我回来时我会。无论如何,如果你想要在刷新计划缓存后想要运行计划缓存的数据,那么你想要运行

DBCC SQLPERF('sys.dm_exec_cached_plans', CLEAR);

在您正在刷新的数据库中。