我想知道当前正在运行哪些存储过程来诊断某些性能问题。我怎么能找到它?
答案 0 :(得分:4)
用于分析锁和死锁的非常有用的脚本:http://www.sommarskog.se/sqlutil/aba_lockinfo.html
显示程序或触发器和当前语句。
答案 1 :(得分:2)
您可以使用SQL事件探查器找到它。
编辑: 如果您可以停止正在运行的应用程序,则可以启动SQL事件探查器,运行该应用程序并查看正在运行的内容,包括存储过程。
答案 2 :(得分:2)
我认为您可以执行sp_who2来获取连接列表,但是您需要在特定连接上通过SQL事件探查器运行跟踪以查看它正在执行的内容。我认为这不适用于已经运行的查询。
答案 3 :(得分:2)
DBCC INPUTBUFFER将显示spid上输入的前255个字符(您可以使用sp_who2来确定您感兴趣的spid)。要查看整个命令,可以使用::fn_get_sql()。
答案 4 :(得分:1)
使用Enterprise Manager,您可以打开“管理树”部分,然后选择“当前活动” - >流程信息双击进程ID将显示该进程正在运行的内容。如果是存储过程,则不会显示参数。为此,最好使用Brian Kim建议使用SQL Profiler。