SQLSERVER 查看操作系统内存


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:规则


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM