隨著時間的推移擷取查詢性能
我正在嘗試隨著時間的推移趨勢查詢性能。我假設查詢儲存將幫助我做到這一點,但我正在使用的 SQL Server 版本是 2014,因此沒有可用的查詢儲存。
有沒有人對我如何擷取這些資訊並將其儲存在表格中以便隨著時間的推移等有任何提示?
您可以利用 SQL Server 中內置的其他工具來收集查詢指標。第一個是動態管理視圖 (DMV)。可以查詢這些以檢索有關目前在系統記憶體中的查詢的聚合數據。每 15 分鐘左右查詢一次,您可以隨著時間的推移建立行為。雖然它只是聚合。此外,它只是記憶體中的內容,因此不會顯示易失性記憶體或未進入記憶體的查詢。這些在 SQL Server 2005 及更高版本中無處不在。
另一種方法是使用擴展事件來擷取查詢指標。這有一個優點和缺點都在一個。擴展事件可以擷取系統上的每一個查詢,讓您進行非常精確的測量。輸出為 XML,但查詢它並將其導入表中很簡單。但是,擴展事件會擷取經過的每個查詢,因此您將需要處理大量數據。雖然擴展事件是在 2008 年添加的,但我不建議您在 2012 年或更高版本之前使用它們。
或者,獲取第三方工具。無論是像 OpenQueryStore 這樣的開源工具、酷炫的工具,還是付費的 3rd 方工具,這都可以讓整個過程變得更加容易。
也許這可以幫助你:
https://github.com/OpenQueryStore/OpenQueryStore
OpenQueryStore (OQS) 是一組腳本,可將類似查詢儲存的功能添加到 SQL Server 2016 之前的實例!
OQS 正在從頭開始建構,以允許從 2005 年到 2014 年(包括 2014 年)的所有 SQL Server 版本和版本都具有類似查詢儲存的功能。數據收集、保留和清理將很容易配置,以允許完全控制 OQS 數據儲存。
該計劃是提供一個完全集成的 OQS 功能,該功能需要最少的管理,包括在重新啟動和備份/恢復期間保持查詢數據的持久性。
另一個選項將允許集中查詢儲存,以收集整個 SQL Server 實例的所有查詢統計資訊。
最後,SQL Server Management Studio 中的一組集成報告將允許對收集的數據進行分析。
支持的版本:SQL Server 2008 - 2014
SQL Server Management Studio 版本 16.x 和 17.x