sys.dm_exec_session_wait_stats (Transact-SQL)

适用于: SQL Server 2016 (13.x) 及更高版本 Azure SQL 数据库Azure SQL 托管实例

返回有关针对每个会话执行的线程遇到的所有等待的信息。 可以使用此视图诊断SQL Server会话的性能问题,以及特定查询和批处理的性能问题。 此视图返回会话的信息与 sys.dm_os_wait_stats (Transact-SQL) 聚合的信息相同,但也提供 session_id 编号。

适用于:SQL Server 2016 (13.x) 及更高版本。

列名称 数据类型 说明
session_id smallint 会话的 ID。
wait_type nvarchar(60) 等待类型的名称。 有关详细信息,请参阅 sys.dm_os_wait_stats (Transact-SQL)
waiting_tasks_count bigint 该等待类型的等待数。 该计数器在每开始一个等待时便会增加。
wait_time_ms bigint 该等待类型的总等待时间(毫秒)。 此时间包括 signal_wait_time_ms
max_wait_time_ms bigint 该等待类型的最长等待时间。
signal_wait_time_ms bigint 正在等待的线程从收到信号通知到其开始运行之间的时差。

备注

此 DMV 在打开会话时重置会话的信息,或者在连接池) 的情况下重置会话 (,

有关等待类型的信息,请参阅 sys.dm_os_wait_stats (Transact-SQL)

权限

对于 SQL Server 2019 (15.x) 及早期版本,如果对服务器具有 VIEW SERVER STATE 权限,则会在 SQL Server 实例上看到所有正在执行的会话;否则,只能看到当前会话。

对于 SQL Server 2022 (16.x) 及更高版本,需要对服务器具有 VIEW SERVER PERFORMANCE STATE 权限。

另请参阅