程序统计信息经常被清除

时间:2018-11-20 09:52:29

标签: sql sql-server-2017

最近几天,在我们的组织中,我们面临着一个奇怪的问题。

我们的SQL Server具有足够的内存(256 GB)和CPU内核。没有内存压力(dm_os_sys_memory的结果为“可用物理内存很高”)。

唯一的问题是,过程统计信息sys.dm_exec_procedure_stats经常被清除。统计数据甚至不会停留一个小时。

我们需要统计信息的原因是,它每天都在DMV dm_exec_procedure_stats的帮助下进行收集。而且,我们的SQL Developer曾经对存储过程进行优化,一旦完成优化,就知道调优活动的有效性,我们将在收集的历史统计数据和当前统计数据之间进行比较。

由于过程统计信息没有保留在缓存中,因此我们无法设置任何基准。

请提出一些解决方案。

版本:Microsoft SQL Server 2017(RTM)-14.0.1000.169(X64)企业版:(Windows Server 2012 R2 Standard 6.3(内部版本9600 :)上的(64位)

1 个答案:

答案 0 :(得分:0)

从总体实例配置更改到Db更改直到在过程中使用重新编译,缓存有多种清除方法。

此链接为可能导致问题的原因提供了很好的线索,但我认为您将需要进行一些调查。

https://www.sqlskills.com/blogs/glenn/eight-different-ways-to-clear-the-sql-server-plan-cache/