Sql-Server
SQL Server 查詢將設置性能計數器“最長事務執行時間”> 0
我正在嘗試確定此性能計數器是否值得監視:\SERVER\MSSQL:Transactions\Longest Transaction Running Time。
因此,在測試期間,我嘗試創建一些長時間執行的事務,但我似乎無法讓該計數器讀取大於零的任何內容。
但我找不到可以做到的交易或查詢。作為起點,我在DBCC OPENTRAN的幫助中使用了範例查詢(事務中的插入),但沒有成功。
是否有影響此計數器的查詢?
晚會有點晚了。我相信文件在過去六年中已經更新以解釋這個問題的答案,但根據我的測試,它並不完全正確。
來自聯機叢書:“自事務啟動以來的時間長度(以秒為單位),該時間比任何其他目前事務都長。此計數器僅在數據庫處於讀取送出的快照隔離級別時顯示活動。它不記錄如果數據庫處於任何其他隔離級別,則進行任何活動。”
根據我的測試,這並不完全正確。如果 RCSI 未啟用,但您允許快照,它將顯示 SNAPSHOT 查詢的最長執行事務時間。
另一個棘手的問題是計數器每 60 秒更新一次。
基本上,當您使用快照或 RCSI 時,它對於監控是否會阻止版本儲存清理非常有用。