sys.dm_exec_query_resource_semaphores

新建日期: 2006 年 4 月 14 日

返回当前查询资源信号量的状态信息。sys.dm_exec_query_resource_semaphores 提供常规的查询执行内存状态,使您可以确定系统是否可以访问足够的内存。该视图补充了来自 sys.dm_os_memory_clerks 的内存信息,可提供完整的服务器内存状态图。sys.dm_exec_query_resource_semaphores 将针对常规资源信号量返回一行信息,并针对小型查询资源信号量返回另外一行信息。

列名 数据类型 说明

resource_semaphore_id

smallint

资源信号量的 ID。0 表示常规资源信号量,1 表示小型查询资源信号量。

target_memory_kb

bigint

授予使用的目标 (KB)。

max_target_memory_kb

bigint

最大潜在目标 (KB)。对于小型查询资源信号量,该值为 NULL。

total_memory_kb

bigint

资源信号量所持有的内存 (KB)。如果系统内存不足或频繁授予强制最小内存,该值可以大于 target_memory_kbmax_target_memory_kb 值。总内存是可用内存和被授予内存的和。

available_memory_kb

bigint

可用于新授予的内存 (KB)。

granted_memory_kb

bigint

授予的总内存 (KB)。

used_memory_kb

bigint

授予内存中实际使用的部分 (KB)。

grantee_count

int

内存授予得到满足的活动查询数。

waiter_count

int

等待内存授予得到满足的查询数。

timeout_error_count

bigint

自服务器启动以来的超时错误总数。对于小型查询资源信号量,该值为 NULL。

forced_grant_count

bigint

自服务器启动以来的强制最小内存授予总数。对于小型查询资源信号量,该值为 NULL。

权限

需要对服务器具有 VIEW SERVER STATE 权限。

备注

如果查询使用的动态管理视图中包括 ORDER BY 或聚合,则可能增加内存占用,进而产生需进行故障排除的问题。

sys.dm_exec_query_resource_semaphores 是 SQL Server 2005 Service Pack 1 中的新增内容。该视图中的信息是专用于 SQL Server 2005 内部实现的,有望在 SQL Server 的下一版本中得到更改。请使用 sys.dm_exec_query_resource_semaphores 进行故障排除,但不要将其加入使用 SQL Server 未来版本的应用程序中。

请参阅

参考

与执行有关的动态管理视图和函数
sys.dm_exec_query_memory_grants

帮助和信息

获取 SQL Server 2005 帮助