簡體   English   中英

Sql Server 2000 - 如何找出當前正在運行的存儲過程?

[英]Sql Server 2000 - How can I find out what stored procedures are running currently?

我想知道當前正在運行哪些存儲過程來診斷一些性能問題。 我怎么能找到它?

用於分析鎖和死鎖的非常有用的腳本: http//www.sommarskog.se/sqlutil/aba_lockinfo.html

它顯示過程或觸發器和當前語句。

您可以使用SQL事件探查器找到它。

編輯:如果您可以停止正在運行的應用程序,您可以啟動SQL事件探查器,運行該應用程序並查看正在運行的應用程序,包括存儲過程。

我認為您可以執行sp_who2來獲取連接列表,但是您需要在特定連接上通過SQL事件探查器運行跟蹤以查看它正在執行的內容。 我認為這不適用於已經運行的查詢。

DBCC INPUTBUFFER將顯示spid上輸入的前255個字符(您可以使用sp_who2來確定您感興趣的spid)。 要查看整個命令,可以使用:: fn_get_sql()

使用Enterprise Manager,您可以打開“管理樹”部分,然后選擇“當前活動” - >“流程信息”。 雙擊進程ID將顯示該進程正在運行的內容。 如果是存儲過程,則不會顯示參數。 為此,最好使用Brian Kim的使用SQL Profiler的建議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM