Sql-Server

監視 SQL Server 2012 中的阻塞查詢

  • May 13, 2020

必須監視 SQL Server 2012 中的阻塞查詢。我們如何確定哪些查詢是鎖定的?我是否使用活動監視器?我想要實際的 SQL 語句。

補充@Chris 的建議 -

您應該使用 sql agent alert 並選擇向您發送電子郵件或登錄到本地數據庫,例如 dbautility 或 dbaadmin(無論您選擇什麼名稱)。這個來自 Andy Mallon 的腳本是一個很好的資源(還有一篇關於它的文章在這裡)。

此外,您可以使用帶有參數的sp_whoisactive@find_block_leaders = 1來向您顯示詳細資訊 - 我已將我的設置為這個 gist。您甚至可以將其記錄到表中。

Microsoft Tiger 團隊發布了一組腳本來為您處理此問題。檢查此連結

https://github.com/Microsoft/tigertoolbox/blob/master/Running-Blocked-Processes/view_Running_Blocked_processes.sql

這將為您提供有關係統上執行的程序的大量資訊。如果這有助於您跟踪問題並進行一些趨勢分析,您可以對其進行修改以將數據發送到表中。

查看他們發布的工具箱中的其餘腳本。

https://github.com/Microsoft/tigertoolbox

引用自:https://dba.stackexchange.com/questions/195519