2014-08-29 37 views
1

我們的產品有一些複雜的存儲過程,它們利用(MSSQL2008r2/2012)CTE和/或臨時表/表變量來計算菜單或級聯權限結構以供系統使用。診斷存儲的Proc爭用

我們已經注意到,通過SQL事件探查器,某些時候程序可能會比正常情況下要大幾個數量級。我們想知道採取行動的最佳原因,以收集信息以確定阻礙/爭奪的內容。一個很好的例子是一個存儲過程,如果我在查詢分析器中手動運行它,則需要222ms的時間來運行實時數據庫,但我們已經看到了9000ms和5000ms的時間。

沒有深入討論有關實際sp的具體情況,您如何開始識別哪些資源在您在profiler中查詢時間較長時被阻止?

我已經看到了哪些查詢可以運行以診斷當前問題的建議,但在這種情況下,爭用可能正在發生,而我們並未發現它。那麼理想情況下,SQL Profiler跟蹤看起來是理想的起點?我是否需要兩個單獨的探查器跟蹤,並在持續時間跟蹤中看到持續時間較長時比較兩者?

+0

我以前發現[點燃SQL服務器 - CONFIO]良好的成功(http://www.confio.com/performance/sql -server /點燃) – Aron 2014-08-29 06:39:58

回答