【发布时间】:2018-04-06 13:24:55
【问题描述】:
是否有任何可能的方法来查找上周在 SQL Server 中哪个进程导致了死锁?我检查了仅保留昨晚数据的扩展事件。如果有人可以分享一个脚本来找出答案会很有帮助。
作业已完成,但出现错误 - 数据库服务器名称:################- 事务(进程 ID 279)在锁定资源上与另一个进程死锁并已被选中作为僵局的受害者。重新运行事务。 System.Data.SqlClient.SqlException (0x80131904):事务(进程 ID 279)与另一个进程在锁资源上死锁,并已被选为死锁受害者。重新运行事务。
【问题讨论】:
-
这就是为什么您要自己设置显式跟踪或事件通知以永久记录所有死锁及其图表 (for example)。默认跟踪是“尽力而为”,并且可能随时被覆盖,具体取决于服务器的繁忙程度。它们只适用于即时故障排除。
标签: sql-server performance deadlock database-deadlocks