是否可以告诉给定SQL Server进程正在运行什么查询?

问题描述 投票:1回答:4

我们的应用程序已开始遇到SQL Server 2005查询被阻止的问题。是否可以告诉阻塞进程正在运行什么查询?如果可能的话怎么办?

sql sql-server process
4个回答
4
投票

如果运行的SQL Server版本大于Express,则SQL Server Management Studio的活动监视器允许您创建系统上当前活动的快照。在那里,您可以看到哪个连接阻止了哪个其他连接。您还可以查看这些连接锁定了哪些表(或其他对象),并提供了导致阻塞的提示。


2
投票

如果您知道阻止过程的SPID,则可以运行DBCC INPUTBUFFER(xxx),其中xxx是SPID。如果您正在使用Activity Monitor,则可以通过双击包含该进程的行来实现相同的功能。


0
投票

我知道有可能,不是一个sql guru,我不能给你一个查询来运行,它将告诉你什么查询阻止。我将插入一个我正在评估的应用程序,这个应用程序到目前为止对我们来说非常好。

Sql Sentry一直在帮助我的小团队确定问题领域。值得注意的是,我们只有一个人熟练使用sql server。

我与公司没有任何关系,也没有以任何方式获得插件补偿。


0
投票

运行SQL事件探查器跟踪,仅包括阻止的进程报告(在错误内)。让它在白天保持运行并监控它以获取阻止信息。

© www.soinside.com 2019 - 2024. All rights reserved.