首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >清除计划缓存提高性能-缓存中的不良计划?

清除计划缓存提高性能-缓存中的不良计划?
EN

Database Administration用户
提问于 2020-06-23 20:43:41
回答 1查看 247关注 0票数 0

在使用Server 12.0.6205.1 ( Server 2014 SP3 CU1)的VM上,我多次遇到这种情况。

使用SSMS,我将运行几次存储过程。它总是要花4秒的时间才能运行。(“客户端统计”中的“服务器回复等待时间”)。然后清除计划缓存:

代码语言:javascript
复制
DBCC FREEPROCCACHE

现在,相同的存储过程将持续运行400 ms。

这个VM在非常轻的负载下。只是我每隔几天就戳一次。

此VM是存在性能问题的生产服务器的副本。所以好像是坏计划被卡在计划缓存里了?很明显,我希望这些电话总是快速的。有什么问题,我该如何解决?

EN

回答 1

Database Administration用户

发布于 2023-03-27 05:02:21

计划一直保存在缓存中,直到内存压力、某个级别的统计数据更新或您重新编译它们为止。如果为返回例如1条记录的值编译了一个计划,那么,稍后将运行一个返回1,000的值,那么性能就会变差。反之亦然。

比较缓慢和快速的计划。

另外,您可以将计划句柄传递给FREEPROCCACHE,以便一次只删除一个计划。安全多了。- https://dba.stackexchange.com/users/6597

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

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

复制
相关文章

相似问题

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