MON_LOCKWAITS 管理视图 - 检索正在等待获取锁定的应用程序的度量

MON_LOCKWAIT 管理视图返回有关代表正在等待获取当前已连接数据库中的锁定的应用程序工作的代理程序的信息。

此管理视图对于识别锁定问题很有用。

此管理视图将替换 SNAPLOCKWAIT 管理视图,不推荐使用此视图。版本 9.7 修订包 1 可能会在将来的发行版中停用。

模式为 SYSIBMADM。

权限

需要下列其中一个权限:
  • MON_LOCKWAIT 管理视图上的 SELECT 特权
  • MON_LOCKWAIT 管理视图上的 CONTROL 特权
  • DATAACCESS 权限

缺省 PUBLIC 特权

返回的信息

表 1. MON_LOCKWAIT 管理视图返回的信息
列名 数据类型 描述或 Monitor 元素
LOCK_NAME VARCHAR(32)

lock_name - 锁定名称

您可以使用 MON_FORMAT_LOCK_ NAME 例程来格式化此内部二进制锁定名称,并获取有关锁定的更多详细信息,例如表锁定引用的表和表空间。
LOCK_OBJECT_TYPE VARCHAR(32) lock_object_type - 等待的锁定对象类型
位置-WAIT_ELAPSED_TIME INTEGER 自代理程序开始等待获取锁定以来经过的时间。 此值以秒为单位。
TABSCHEMA VARCHAR(128)

table_schema - 表模式名

对于不引用表的锁定,将返回 NULL。

TABNAME VARCHAR(128)

table_name - 表名

对于不引用表的锁定,将返回 NULL。

DATA_PARTITION_ID INTEGER

data_partition_id - 数据分区标识

此元素仅适用于分区表和分区索引。 当返回锁定级别信息时,值 -1 代表一个控制对整个表进行访问的锁定。

LOCK_MODE VARCHAR(10) lock_mode - 锁定方式
LOCK_CURRENT_MODE VARCHAR(10)

lock_current_mode - 转换前的原始锁定方式

如果 LOCK_STATUS 不是 "C" (正在转换) ,那么将返回值 NULL。

LOCK_MODE_REQUESTED VARCHAR(10) lock_mode_requested - 请求的锁定方式
req_application_handle BIGINT req_application_handle-请求应用程序句柄
req_agent_tid BIGINT req_agent_tid-正在请求代理程序 TID
req_member SMALLINT req_member-正在请求成员
请求应用程序名称 VARCHAR(128) 正在等待获取此锁定的客户机上运行的应用程序的名称。
REQ_USERID VARCHAR(128) 正在等待获取此锁定的应用程序正在使用的会话的当前授权标识。
REQ_STMT_TEXT CLOB(2MB)

正在执行等待获取锁定的应用程序的 SQL 语句部分。

对于非 SQL 活动,将返回长度为 0 的字符串值。

hld_application_handle BIGINT

hld_application_handle-保存 applicationHANDLE

如果持有此锁定的应用程序未知或找不到,那么将返回值 NULL。

hld_member SMALLINT hld_member-保留成员
HLD_APPLICATION_NAME VARCHAR(128)

在持有此锁定的客户机上运行的应用程序的名称。

如果持有此锁定的应用程序未知或找不到,那么将返回 0 长度的字符串值。

HLD_USERID VARCHAR(128) 持有此锁定的应用程序正在使用的会话的当前授权标识。
HLD_CURRENT_STMT_TEXT CLOB(2MB) 当前与持有锁定的应用程序关联的 SQL 语句文本。 请注意,这不一定是导致锁定的语句。