2017-06-22 78 views
0

是什麼原因導致select * from sys.dm_exec_query_stats返回只有幾行?記錄數量從3到30不等。sys.dm_exec_query_stats只返回幾行

在不同的服務器/機器上,我獲得了超過8.5萬行。 這是一個內存壓力的指標嗎?

+0

是不是像其他服務器上的操作數量較大? – Whencesoever

回答

1

它返回的性能統計數據緩存的查詢計劃,看看這個鏈接查看更多細節:link

它去顯示任何特定的機器不同數量取決於有多少查詢計劃已經被緩存

+0

謝謝。在兩臺服務器上都有幾乎相同的工作負載(相同的應用程序)。但在一臺機器上安裝了50個實例,另一臺只安裝了5個。 – donhauro

+0

一行顯示計劃的每個單獨查詢,因此如果計劃有10個查詢,那麼將有10行,如果它有1個,那麼只有一行。計算不同的plan_handle以查看每個計劃中有多少個計劃 – dbajtr

+0

我執行選擇「A」。 然後我查詢sys.dm_exec_query_stats並查看兩個執行計劃。 一個是選擇「A」的執行計劃,另一個執行計劃是選擇sys.dm_exec_query_stats本身。 經過一段時間(兩三秒後),我再次查詢sys.dm_exec_query_stats,並且只有一個計劃用於選擇sys.dm_exec_query_stats。 SQL Server會保存這些信息多久?在另一臺機器上,我有執行計劃(3或4天)。 – donhauro