set nocount on
dbcc memorystatus
Memory Manager
- VM 保留 : 此值显示的虚拟地址空间 (VAS) 保留 SQL Server 总量。
- VM 确认 : 此值显示 SQL Server 已提交的 VAS 的总量。 提交的 VAS 已与物理内存。
- AWE 分配 : 此值显示通过 AWE 机制的 SQL Server 在 32 位版本上分配的内存的总量。 或者,此值的显示的产品在 64 位版本使用的整个锁定页的内存量。
- 保留的内存 : 此值显示为专用的管理员连接 (DAC) 保留的内存。
- 保留内存中使用 : 此值显示正在使用保留的内存。
Buffer Distribution
- 被盗 : 被盗内存 描述服务器用于其他目的的 8 KB 缓冲区。 这些缓冲区用作泛型的内存存储分配。 服务器的不同组件使用这些缓冲区存储内部数据结构。 lazywriter 进程不允许刷新出缓冲池的被盗的缓冲区。
- 忙 : 此值显示当前未使用的提交的缓冲区。 这些缓冲区可用于存放数据。 或者,其他组件可能会请求这些缓冲区,然后将这些缓冲区标记为 被盗 。
- 缓存 : 此值显示用于不同的缓存的缓冲区。
- 数据库 (清除) : 此值显示的缓冲区的有数据库内容且的不被修改。
- 数据库 (脏) : 此值显示的缓冲区的有数据库内容且的已修改。 这些缓冲区包含更改必须刷新到磁盘。
- I / O : 此值显示等待挂起的 I / O 操作的缓冲区。
- Latched : 此值显示 latched 缓冲区。 一个线程被读取或修改页的内容时,被 latched 缓冲区。 正在从磁盘读取页时,还 latched 缓冲区或向磁盘写入。 闩锁用于维护页中数据的物理一致性,尽管它正被读取或修改。 锁来维护逻辑和事务的一致性。
Global Memory Objects
- 资源 : 此值显示 Resource 对象所使用的内存。 Resource 对象用于存储引擎以及各种服务器范围内的结构。
- 锁定 : 此值显示在内存的锁定管理器使用。
- XDES : 此值显示在内存的事务管理器使用。
- SETLS : 此值显示用于分配存储引擎的特定于每个线程结构使用线程本地存储的内存。
- SE 数据集 Allocators : 此值显示用于分配结构,用于通过 访问方法 设置的表访问的内存。
- SubpDesc Allocators : 此值显示用于管理并行查询、 备份操作,还原操作、 数据库操作,文件操作、 镜像,和异步光标的子进程的内存。 这些子进程也称为是 并行的进程 。
- SE SchemaManager : 此值显示架构管理器使用来存储存储引擎的特定元数据的内存。
- SQLCache : 此值显示内存来存储文本的特殊语句和准备的语句。
- 复制 : 此值显示服务器用于内部复制子系统的内存。
- ServerGlobal : 此值显示由几个子系统通常使用的该全局服务器内存对象。
- XP 全局 : 此值显示扩展存储的过程使用的内存。
- 排序表 : 此值显示在内存的排序表使用
select
type,
sum(virtual_memory_reserved_kb) as [VM Reserved],
sum(virtual_memory_committed_kb) as [VM Committed],
sum(awe_allocated_kb) as [AWE Allocated],
sum(shared_memory_reserved_kb) as [SM Reserved],
sum(shared_memory_committed_kb) as [SM Committed],
sum(multi_pages_kb) as [MultiPage Allocator],
sum(single_pages_kb) as [SinlgePage Allocator]
from
sys.dm_os_memory_clerks
group by type
http://support.microsoft.com/default.aspx/kb/907877