SQL Server 查询无限期挂起 - 仅恢复数据库解决方案

SQL Server 查询无限期挂起 - 仅恢复数据库解决方案

有时我们会遇到 SQL Server 上无限期挂起的查询。此查询是从单独的 ColdFusion Web 服务器调用的。

如果我在挂起时运行分析器,我只会看到锁被一遍又一遍地分配和释放。当此查询挂起时,此数据库上的所有其他查询都运行正常。

奇怪的是,我可以从 SSMS 运行查询,并且它在几秒钟内运行(即使应用程序查询挂起)。

到目前为止我发现的唯一解决方案是备份数据库然后恢复数据库。这可以立即解决问题。

有任何线索知道发生了什么事吗?

提前致谢!

答案1

当然,停止和启动 SQL Server 服务比执行备份和恢复操作更方便。

当查询处于“挂起”状态时,通过查询分析器查看 GUI 中的活动监视器或 sp_who2。您应该能够识别该进程 - 查看它在等待什么,或者它是否被阻止。重复此操作以查看 CPU/IO 是否正在运行。

还要检查 SQL 和 NT 日志,寻找发生的情况的任何线索。

我建议将这一切作为第一步。

答案2

您可以检查阻塞进程报告来查看您的查询是否被其他进程锁定。

查看鏈出。

相关内容