我運行了SQL Server Profiler跟蹤(批量完成持續時間)並發現了一個非常長的正在運行的查詢。這些都爲五大運行時間最長的查詢利用統計數據:這種查詢如何在不佔用太多資源的情況下佔用這麼多時間?
Count Duration CPU Reads Writes
1 1237757030 608 47979 10
14695 358668961 355928 4818709 315
3501 48323496 43705 625474 17
75883 46373094 45250 8526977 127
34 35394031 10200 2461621 0
第一個運行速度比第二長近3倍,即使第二個有一個更大的累計CPU時間和數量比第一讀取一。這怎麼可能,或者我怎麼能找到更多關於這裏發生的事情?
如果您正在運行SQL分析器,您應該能夠獲取正在運行的原始SQL查詢。如果你能看到那應該提供一個洞察力?如果這樣粘貼到問題中。 – Chris
您可以嘗試查看查詢執行計劃,以更好地瞭解查詢正在做什麼以及爲什麼需要這麼長時間。 – Danny
LongerDuration + LessCPU-LessReads-LessWrites可能來自查詢等待釋放的一個(或多個)鎖。 –