【发布时间】:2017-12-14 06:35:39
【问题描述】:
我们的存储过程已经完美运行了 10 多年。几天前它开始超时。我从 SQL Management Studio 的查询控制台运行它,它超时。我重新启动服务器,然后它在 1 秒内运行...
【问题讨论】:
-
你真的有问题吗?
-
听起来查询的计划很糟糕。
-
我猜您的计划已损坏...下次超时清除缓存并检查
-
@SeanLange 暗指的是,“你希望别人如何用你提供的东西来回答这个问题?”。任何试图回答这个问题的尝试都是从提出大量问题开始,或者在黑暗中对可能发生的一系列原因开枪。该问题可能与此查询完全无关......即另一个查询或操作可能是真正的问题,您只是注意到副作用。就像我在说“我的车已经运行了 10 年,但现在它有时会跳动,并且将其关闭和打开可以解决一段时间”。
-
是的,@scsimon 非常成功。我们不知道发生了什么。我想到了两种快速的可能性。这可能是一个糟糕的执行计划或阻塞。其中任何一个都可以通过重新启动来解决。我的猜测是这是一个糟糕的执行计划。假设您需要知道为什么该计划不好。这可能是由于很多事情造成的,最有可能的是,您已经达到了数据量的“临界点”,导致计划不太理想。但由于没有细节,所以无法肯定地说。甚至更不可能帮助解决问题。
标签: sql sql-server performance timeout sqlperformance