Sql-Server

SQL Server 查詢儲存是否擷取參數值?

  • April 21, 2018

SQL Server 2016 中引入的新查詢儲存很棒。它可以很好地替代我以前使用舊的 Profiler 工具所做的大部分工作。但是,我還沒有找到一種方法來擷取與對它嗅出的高資源消耗查詢的單個呼叫相關的**參數值。**這可能嗎?

我知道查詢儲存更多地處理聚合數據而不是個人呼叫,所以我懷疑我在這裡可能不走運。當我發現一個緩慢的查詢時,我發現它可以很方便地進行故障排除,還可以將參數與其最慢的呼叫之一相關聯。我想知道如何使用最新最好的工具來做到這一點。(我不會錯過使用 Profiler 的機會!)

在安全方面,Query Store 的鎖定程度是否比 Profiler 少?我認為它需要在某個級別從單個呼叫中擷取數據以計算聚合。只是不確定它是否儲存任何內容。

根據計劃,您應該能夠ParameterCompiledValue通過檢查保存在sys.query_store_plan.

該列表通常包含在 xml 計劃的末尾,並且可以在ParameterList節點中找到。

這不會為每次執行提供價值,但可以讓您了解計劃的編譯內容。

如果您確實需要獲取每次執行的值,您可以創建一個擴展事件會話來收集詳細資訊。

引用自:https://dba.stackexchange.com/questions/169106