文档首页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
信息 (Gzip) - 4.0Mb
信息 (Zip) - 4.0Mb


25.6.17.7 ndbinfo cluster_locks 表

cluster_locks 表提供有关当前锁定请求的信息,这些请求持有和等待 NDB 集群中 NDB 表上的锁,并且旨在作为 cluster_operations 的配套表。 从 cluster_locks 表获得的信息可能有助于调查停顿和死锁。

cluster_locks 表包含以下列:

  • node_id

    报告节点的 ID

  • block_instance

    报告 LDM 实例的 ID

  • tableid

    包含此行的表的 ID

  • fragmentid

    包含锁定行的片段的 ID

  • rowid

    锁定行的 ID

  • transid

    事务 ID

  • mode

    锁定请求模式

  • state

    锁定状态

  • detail

    这是否是行锁定队列中第一个持有锁

  • op

    操作类型

  • duration_millis

    等待或持有锁所花费的毫秒数

  • lock_num

    锁定对象的 ID

  • waiting_for

    等待具有此 ID 的锁

笔记

表 ID(tableid 列)是内部分配的,与其他 ndbinfo 表中使用的相同。 它也显示在 ndb_show_tables 的输出中。

事务 ID(transid 列)是由 NDB API 为请求或持有当前锁的事务生成的标识符。

mode 列显示锁定模式;它始终是 S(表示共享锁)或 X(独占锁)之一。 如果事务在给定行上持有独占锁,则该行上的所有其他锁都具有相同的事务 ID。

state 列显示锁定状态。 它的值始终是 H(持有)或 W(等待)之一。 等待的锁请求等待由不同事务持有的锁。

detail 列包含 *(星号字符)时,这意味着此锁是受影响行的锁队列中第一个持有锁;否则,此列为空。 此信息可用于帮助识别锁请求列表中的唯一条目。

op 列显示请求锁的操作类型。 它始终是以下值之一:READINSERTUPDATEDELETESCANREFRESH

duration_millis 列显示此锁请求已等待或持有锁的毫秒数。 当为等待请求授予锁时,它会重置为 0。

锁 ID(lockid 列)对于此节点和块实例是唯一的。

锁定状态显示在 lock_state 列中;如果这是 W,则锁正在等待被授予,并且 waiting_for 列显示此请求正在等待的锁对象的锁 ID。 否则,waiting_for 列为空。 waiting_for 只能引用同一行上的锁,如 node_idblock_instancetableidfragmentidrowid 所标识。