活动监视器(“按进程分类的锁”页)
使用此页可以查看有关属于特定进程的锁的信息。
选项
- 所选进程
指定系统进程 ID (SPID) 以显示哪些锁与每个进程相关。
对于每个锁,均显示以下列。可以更改网格中列的顺序,方法是将相应列的标题拖动到希望的位置。
- 对象
当前锁定对象的名称。
类型
锁的类型。可能的类型有:类型 说明 RID
行标识符。用于在表中单独锁定一行。
键
索引中的行锁。用于保护可串行事务中的键范围。
页
数据页或索引页。
区
一个连续组,包含八个数据页或索引页。
表
一个完整的表,包括所有数据和索引。
数据库
一个完整的数据库。
元数据
关于对象的说明性信息。
可以使用其他类型。
- 子类型
其他类型信息。此列可能为空。
- 对象 ID
锁所对应的数据库对象的对象 ID。
- 说明
线程提供的说明性信息(如果有的话)。
请求模式
请求的锁类型。类型 说明 共享 (S)
用于不更改或不更新数据的操作(只读操作),如 SELECT 语句。
更新 (U)
用于可更新的资源。防止当多个会话在读取、锁定以及随后可能进行的资源更新时发生常见的死锁。
排他 (X)
用于数据修改操作,如 UPDATE、INSERT 或 DELETE。确保不会同时对同一资源进行多重更新。
意向
用于建立锁的层次结构。
架构
在执行依赖于表架构的操作时使用。有两种类型的架构锁:架构稳定性 (Sch-S) 和架构修改 (Sch-M)。
大容量更新 (BU)
向表中大容量复制数据时使用,并且指定了 TABLOCK 提示。
RangeS_S
共享范围,共享资源锁;可串行范围扫描。
RangeS_U
共享范围,更新资源锁;可串行更新扫描。
RangeI_N
插入范围、空资源锁。用于向索引插入新键前测试范围。
RangeX_X
排他范围,排他资源锁。在更新范围中的键时使用。
- 请求类型
请求的对象类型。
请求状态
锁请求的状态。类型 说明 GRANT
已获得锁。
WAIT
另一进程阻塞了锁。
CNVT
锁正转换为另一种锁。要转换为另一种锁的锁会保持在一种模式中,但会等待获取更强的锁模式(例如,从更新模式变为排他模式)。诊断阻塞问题时,CNVT 将视为与 WAIT 相似。
- 所有者类型
锁的内部所有者,如 TRANSACTION、SESSION 或 CURSOR。
- 所有者 ID
与进程相关联的所有者 ID。
- 所有者 GUID
锁所有者的 GUID。
- 数据库
包含锁的数据库。
- 进程 ID
持有或请求锁的进程 ID。这与在页面顶部选择的进程 ID 相同。
- 上下文
执行上下文 ID。表示与特定 SPID 相关联的给定线程的 ID。
- 批 ID
批 ID。