SQL Server日志块在某个地方?

有没有一种方法可以在事先没有提前设置的情况下识别被其他进程阻塞或阻塞的进程?

我每周的维护工作(重build索引,更新统计)运行时间非常长。 我在想,它正在试图做某些事情,并遇到阻止,以阻止它继续,但我不知道这可能是什么。

谢谢!

我检查了SQL 2005 DMV的概述,似乎一切似乎表明系统视图和function只能实时收集交易信息。 默认跟踪可以使用fn_trace_gettable访问,你可能会发现一些细节。

捕获这些信息的最佳方式就像你所build议的那样,以提前捕获它。 我们实际上有一个第三方工具正是为了这个目的; 捕获查询信息,然后我们可以使用它来调查事实之后的性能问题。

不,你需要设置一些日志自己到一个表,以便事后查询它。