1. 通過系統試圖查看內存信息
SELECT total_physical_memory_kb / 1024 AS [物理內存(MB)] , available_physical_memory_kb / 1024 AS [可用物理內存(MB)] , system_cache_kb / 1024 AS [系統緩存內存總量(MB)] , ( kernel_paged_pool_kb + kernel_nonpaged_pool_kb ) / 1024 AS [內核池內存總量(MB)] , total_page_file_kb / 1024 AS [操作系統報告的提交限制的大小(MB)] , available_page_file_kb / 1024 AS [未使用的頁文件的總量(MB)] , system_memory_state_desc AS [內存狀態說明] FROM sys.dm_os_sys_memory
--用DBCC強制釋放部分SQL SERVER 內存緩存:
DBCC FREESYSTEMCACHE
DBCC FREESESSIONCACHE
DBCC FREEPROCCACHE
2. 查看各種對象占用內存的多少
SELECT objtype , SUM(size_in_bytes) / 1024 AS sum_size_in_KB , COUNT(bucketid) AS cache_counts FROM sys.dm_exec_cached_plans GROUP BY objtype
會緩存執行計划的對象:
proc:存儲過程
prepared:預定義語句
Adhoc:動態查詢
ReplProc:復制篩選過程
Trigger:觸發器
View:視圖
Default:默認值
UsrTab:用戶表
SysTab:系統表
Check:Check約束
Rule:規則