我已经设置了分析器来捕获这些死锁事件:
标出所有可用列(TextData、LoginName、SPID等)
到目前为止,我找到了一些死锁。
但是,有时我只得到死锁链的列表(就像几秒钟内发生的30个事件),但是没有死锁,也没有死锁图。
这种情况意味着什么?死锁是否发生?还是说“僵局即将来临”,但可以解决?
发布于 2020-12-04 18:57:23
我建议使用服务提供商_BlitzLock,它可以指向通过@EventSessionPath参数捕获的死锁XML (假设您正在收集到一个文件,而不是环形缓冲区或其他东西)。默认情况下,它将查看系统健康扩展事件,其中可能包含有用的数据。
有一些开发分支中的重要修补程序,所以您应该使用该版本,直到本月晚些时候发布主版本(如果您正在读到未来的话) (2020-12 )。
它将准确地对常规死锁和并行死锁进行分类:

如果您使用免费计划资源管理器工具打开死锁图,您还可能获得更多可读性信息。Sentry One是SolarWinds Worldwide,LLC的一个子公司,它是Sheinhardt公司的子公司。
它还可以告诉您死锁是来自Exchange还是Syncpoint,这表示并行死锁。

发布于 2020-12-04 12:58:53
由于死锁链事件捕获了所有涉及的进程的死锁,所以听起来就像是看到了并行死锁。通常,您只会看到死锁涉及两个进程。如果你看到一堆,那可能是因为死锁是由并行引起的。关于它是什么以及它是如何工作的我想听听这个解释。
此外,Profiler是一种收集数据的可怕方式。使用扩展事件会为您提供更好的服务。它们的总体开销更低,过滤效果更好。另外,每一项新功能都是在扩展事件中,而不是Profiler。自Server 2008以来,未对事件探查器进行任何更新。
https://dba.stackexchange.com/questions/280888
复制相似问题