0
点赞
收藏
分享

微信扫一扫

mysql行锁

记录锁是索引记录上的锁。例如,SELECT c1 FROM t WHERE c1=10 For UPDATE;防止任何其他事务插入、更新或删除t.c1值为10的行。

记录锁总是锁定索引记录,即使定义的表没有索引也是如此。对于这种情况,InnoDB会创建一个隐藏的聚集索引,并将该索引用于记录锁定。见第14.6.2.1节“聚集指数和二级指数”。

记录锁的事务数据在SHOW ENGINE INNODB STATUS和INNODB监视器输出中显示如下:

RECORD LOCKS space id 58 page no 3 n bits 72 index PRIMARY of table test.t trx id 10078 lock_mode X locks rec but not gap Record lock, heap no 2 PHYSICAL RECORD: n_fields 3; compact format; info bits 0 0: len 4; hex 8000000a; asc ;; 1: len 6; hex 00000000274f; asc 'O;; 2: len 7; hex b60000019d0110; asc ;;


举报

相关推荐

0 条评论