You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解读MySQL死锁日志中记录锁段的len、hex等字段含义

InnoDB死锁日志片段逐字段解读

锁申请上下文行逐字段说明

对应日志第一行:
RECORD LOCKS space id 89 page no 3 n bits 120 index PRIMARY of table ot.ta trx id 6331 lock_mode X waiting

  • space id 89:该锁所属的InnoDB表空间ID,为物理存储层面的分区标识,对应ot.ta表的存储位置
  • page no 3:锁挂载的索引页编号,该页为表的主键聚簇索引的第3个数据页
  • n bits 120:该索引页的锁位图长度为120位,代表页内最多可同时记录120条记录的锁持有状态
  • index PRIMARY of table ot.ta``:锁的挂载对象为ot库下ta表的聚簇主键索引
  • trx id 6331:发起本次加锁请求的事务唯一ID为6331
  • lock_mode X waiting:当前事务正处于阻塞状态,等待在目标记录上申请排他X锁,尚未获得锁持有权限

目标记录元信息行逐字段说明

对应日志第二行:
Record lock, heap no 50 PHYSICAL RECORD: n_fields 9; compact format; info bits 0

  • Record lock:锁类型为纯记录锁,不包含间隙锁、临键锁范围
  • heap no 50:目标记录在当前索引页内的堆存储槽位为第50位,与业务主键值无直接对应关系
  • n_fields 9:这条聚簇索引记录物理存储共包含9个字段
  • compact format:记录采用InnoDB紧凑行格式存储
  • info bits 0:记录头部标记位为0,代表这是有效业务记录,无删除标记等特殊状态

物理记录字段逐行解读

聚簇索引的字段存储顺序是InnoDB固定规则:用户定义的主键列 → 两个InnoDB内置隐藏列 → 用户定义的其余业务列。每个字段的三个标识含义统一为:

  • len:当前字段的物理存储字节长度
  • hex:字段存储的原始二进制值的十六进制编码
  • asc:将十六进制值转换为可打印ASCII字符的展示结果,遇到不可打印的二进制内容时显示为空格,仅作辅助展示,无核心排查价值

逐字段对应关系:

  • 0号字段:len 4; hex 80000031; asc 1;; —— 用户定义的主键列,长度4字节。MySQL存储整数类型时会翻转最高位符号位避免正负值二进制冲突,该值减去正整数基数80000000后得到十进制值49,即目标记录的主键值为49
  • 1号字段:len 6; hex 0000000018ba; asc ;; —— InnoDB内置隐藏列trx_id,固定长度6字节,存储最近一次修改该记录的事务ID,转十进制值为6330
  • 2号字段:len 7; hex 330000019c1f2f; asc 3 /;; —— InnoDB内置隐藏列roll_pointer,固定长度7字节,存储指向回滚段的指针,用于事务回滚、MVCC版本链构建
  • 3号字段:len 4; hex 80000004; asc ;; —— 用户定义的第一列非主键业务列,长度4字节,对应整数值为4
  • 4号字段:len 1; hex 44; asc D;; —— 用户定义的第二列非主键业务列,长度1字节,对应ASCII字符'D'
  • 5号字段:len 4; hex 80000009; asc ;; —— 用户定义的第三列非主键业务列,长度4字节,对应整数值为9
  • 6号字段:len 1; hex 81; asc ;; —— 用户定义的第四列非主键业务列,长度1字节,根据列类型定义,若为有符号类型则值为0,若为无符号类型则值为129
  • 7号、8号字段:各为6字节长度的十六进制值 —— 用户定义的第五、六列非主键业务列,结合长度判断为InnoDB存储的日期时间类型值,可通过MySQL时间类型的十六进制转换规则得到具体时间值

备注:日志不会直接输出业务列名,若需匹配具体列含义,需结合ot.ta表的建表语句,按照列定义顺序与上述物理存储字段一一对应即可。权威参考规则可查阅InnoDB官方文档中锁日志输出格式、聚簇索引物理结构的相关章节说明。

内容的提问来源于stack exchange,提问作者linlowa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.23 07:36:04