InnoDB事务锁之行锁-insert唯一二级索引重复键加锁案例
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,1、表结构CREATE TABLE `t3` ( `id` int(11) NOT NULL, `id2` int(11) DEFAULT NULL, `id3` int(11) D
千家信息网最后更新 2026年11月01日InnoDB事务锁之行锁-insert唯一二级索引重复键加锁案例
1、表结构
CREATE TABLE `t3` ( `id` int(11) NOT NULL, `id2` int(11) DEFAULT NULL, `id3` int(11) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `id2` (`id2`,`id3`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;2、数据
mysql> select *from t3; +----+------+------+ | id | id2 | id3 | +----+------+------+ | 6 | 1 | 1 | | 8 | 1 | 2 | | 10 | 1 | 3 | | 7 | 4 | 4 | | 1 | 6 | 6 | | 4 | 7 | 7 | +----+------+------+ 6 rows in set (0.00 sec) 3、插入数据
mysql> insert into t3 values(11,1,3); ERROR 1062 (23000): Duplicate entry '1-3' for key 'id2' 4、show engine innodb status\G
---TRANSACTION 17751, ACTIVE 17 sec 2 lock struct(s), heap size 320, 1 row lock(s) MySQL thread id 10, OS thread handle 0xa32ffb90, query id 193 localhost root init show engine innodb status TABLE LOCK table `yzs`.`t3` trx id 17751 lock mode IX RECORD LOCKS space id 30 page no 4 n bits 80 index `id2` of table `yzs`.`t3` trx id 17751 lock mode S Record lock, heap no 7 PHYSICAL RECORD: n_fields 3; compact format; info bits 0 0: len 4; hex 80000001; asc ;; 1: len 4; hex 80000003; asc ;; 2: len 4; hex 8000000a; asc ;; 5、加锁原理图
6、总结
唯一二级索引重复键检查中,如果遇到重复key,那么会对重复的key加S类型的next-key锁。注意:这里不论是什么隔离级别加的都是next-key锁
数据
索引
原理
类型
级别
结构
检查
隔离
事务
案例
之行
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司
广州百单互联网科技有限公司
互联网巨头反垄断金融科技
金诺互联网科技
互联网 科技公司
深圳互联网科技公司
平安科技 互联网
火传媒上海互联网科技
恒银科技与互联网金融
随着互联网科技发展
河南猎农互联网科技有限公司
花神(南京)互联网科技有限公司
浙南科技城互联网大厦建设工程
恒生互联网科技业指数调整周期
21世纪互联网科技成就
艺电能源互联网科技有限公司招聘
福仕德教育科技互联网
绵阳真晨互联网科技有限公司
亚光科技低轨卫星互联网
每日互联网科技新闻
北京互联网科技
礼当家互联网科技
万易互联网科技有限公司
科技互联网创业计划书
互联网软件和科技
智腾互联网科技有限公司
广西互联网科技孵化中心
河南住房之家互联网科技
广西泛欧互联网科技有限公司
株洲百竞科技的互联网营销顾问