徵狀
在 Enterprise 與開發人員以外的 SQL Server 2016 版本中,查詢儲存自動資料清除可能會失敗。 因此,如果沒有手動清除資料,查詢儲存區所使用的空間會隨著時間增長,直到達到設定的限制為止。 如果沒有解決這個問題,為錯誤記錄指派的磁碟空間也會填滿,因為每次嘗試執行清理都會產生一個轉儲檔案。 清理啟用週期視負載頻率而定。 不過,它不超過15分鐘。
解決方案
此問題的修正套裝程式含在 SQL Server 的下列累積更新中:
每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:
因應措施
若要解決此問題,如果您打算在企業版和開發人員以外的版本中使用查詢存放區,您必須明確關閉清理原則。 您可以從 SQL Server Management Studio ([資料庫屬性] 頁面)或使用下列 Transact-sql 腳本來執行此動作:
ALTER DATABASE database_name 集合 QUERY_STORE (OPERATION_MODE = READ_WRITE,CLEANUP_POLICY = (STALE_QUERY_THRESHOLD_DAYS = 0),SIZE_BASED_CLEANUP_MODE = OFF)此外,請考慮手動清理選項,避免 [查詢儲存區] 轉換成隻讀模式。 例如,請執行下列查詢以定期清除 [空間]:
變更資料庫 database_name 設定 QUERY_STORE 清除此外,定期執行下列查詢商店儲存程式,以清除執行時間統計資料、特定查詢或方案:
-
sp_query_store_reset_exec_stats
-
sp_query_store_remove_plan
-
sp_query_store_remove_query
狀態
Microsoft 已確認<適用於>一節中所列的 Microsoft 產品確實有上述問題。
參考
瞭解 Microsoft 用於描述軟體更新的 術語 。