Azure-Sql-Database
如何清除 Azure SQL 數據庫的數據緩衝區記憶體
我想對 Azure SQL 數據庫進行一些性能測試。
對於 SQL Server,我讀過DBCC DROPCLEANBUFFERS可用於清除數據緩衝區記憶體,而DBCC FREEPROCCACHE可用於清除執行計劃記憶體。
但 Azure SQL 數據庫都不支持。對於執行計劃記憶體,ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE 似乎是一種替代方案。但我找不到數據緩衝區記憶體的替代方案。
如何清除 Azure SQL 數據庫的數據緩衝區記憶體?
Azure SQL 數據庫目前沒有類似 DBCC DROPCLEANBUFFERS 之類的東西可用於清理緩衝池上的數據,但擴展或縮小數據庫層具有與 DBCC DROPCLEANBUFFERS 相同的效果,並且在最初的幾分鐘內也會減少記憶體分配.
希望這可以幫助。
您可以使用ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)來清除過程記憶體。本文討論 Azure SQL 數據庫中主動異地複制上下文中的主要和次要。
ALTER DATABASE SCOPED CONFIGURATION CLEAR PROCEDURE_CACHE ;
清除 PROCEDURE_CACHE
清除數據庫的過程(計劃)記憶體。這可以在主伺服器和輔助伺服器上執行。
執行此語句將清除目前數據庫中的過程記憶體,這意味著所有查詢都必須重新編譯。
另一個資源:
(SQL) 每日提示:清除 SQL Azure 中的 Proc 記憶體,作者 Shannon Gowen。