![SQL Server 数据缓存 SQL Server 数据缓存](https://image.shishitao.com:8440/aHR0cHM6Ly9ia3FzaW1nLmlrYWZhbi5jb20vdXBsb2FkL2NoYXRncHQtcy5wbmc%2FIQ%3D%3D.png?!?w=700&webp=1)
引言
SQL Server通过一些工具来监控数据,其中之一的方法就是动态管理管理视图(DMV).
常规动态服务器管理对象
- dm_db_*:数据库和数据库对象
- dm_exec_*:执行用户代码和关联的连接
- dm_os_*:内存、锁定、时间安排
- dm_tran_*:事务和隔离
- dm_io_*:网络和磁盘输入输出
数据缓存
对于当前数据缓存中每个数据库的缓存大小情况,可以使用如下DMV来查询,sys.dm_os_buffer_descriptiors
select COUNT(*)*8/1024 as 'Cache Size',
case database_id
when 32767 then 'ResourceDb'
else DB_NAME(database_id) end as 'Database'
from sys.dm_os_buffer_descriptors
group by DB_NAME(database_id),database_id
order by 'Cache Size' desc