Buffer Pool--SQL Server:Memory Manager 对象

时间:2023-02-04 00:40:44

--=================================================================
SELECT * FROM sys.sysperfinfo
WHERE object_name LIKE '%SQLServer:Memory Manager%'
 
--当Target Server Memory>Total Server Memory 时,证明服务器还可以给SQL SERVER 分配内存,
--当Target Server Memory=Total Server Memory 时,服务器分配内存达到最大或者内存出现瓶颈
 
 
SQL Server Memory Manager 计数器
 
Connection Memory (KB)
服务器正在用来维护连接的动态内存总量。
 
Granted Workspace Memory (KB)
当前给予执行哈希、排序、大容量复制和索引创建操作等进程的内存总量。
 
Lock Blocks
服务器正在使用的锁块的当前数目(定期进行刷新)。一个锁块代表一个单独的锁定资源,如表、页或行。
 
Lock Blocks Allocated
当前分配的锁块数。服务器启动时,分配的锁块数加上分配的锁拥有者块数依赖于 SQL Server Locks 配置选项。若需要更多的锁块,此值会增加。
 
Lock Memory (KB)
服务器用于锁的动态内存总量。
 
Lock Owner Blocks
当前正在服务器上使用的锁拥有者块的数目(定期进行刷新)。一个锁拥有者块代表一个独立线程对某一对象上的一个锁的拥有权。因此,若三个线程在一个页上各有一个共享 (S) 锁,就会有三个锁拥有者块。
 
Lock Owner Blocks Allocated
分配的锁拥有者块的当前块数。服务器启动时,分配的锁拥有者块数和分配的锁块数依赖于 SQL Server Locks 配置选项。若需要更多的锁拥有者块,此数值会动态增加。
 
Maximum Workspace Memory (KB)
用于执行哈希、排序、大容量复制和索引创建操作等进程的最大可用内存数。
 
Memory Grants Outstanding
成功获得工作空间内存授权的进程总数。
 
Memory Grants Pending
等待工作空间内存授权的进程总数。
 
Optimizer Memory (KB)
服务器正在用于查询优化的动态内存总数。
 
SQL Cache Memory (KB)
服务器正在用于动态 SQL 高速缓存的动态内存总数。
 
Target Server Memory (KB)
服务器能够使用的动态内存总量。
 
Total Server Memory (KB)
从缓冲池提交的内存 (KB)。这不是 SQL Server 使用的总内存。