InnoDB事务锁之行锁-insert唯一二级索引重复键加锁案例
发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,1、表结构CREATE TABLE `t3` ( `id` int(11) NOT NULL, `id2` int(11) DEFAULT NULL, `id3` int(11) D
千家信息网最后更新 2025年02月23日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安全错误
数据库的锁怎样保障安全
互联网属于科技革命吗
jsp显示数据库
网络安全知识有哪些
该服务器位于美利坚共和国久久
网络安全素质教育pdf
网络安全意识培训的意义
数据库入侵
如何测试服务器是否被限制
数据库中的sc代表什么
数据库的二级映像
塔城app软件开发
软件开发销售成本帐务
计算机工程软件开发
公安网络安全知识内容
星外服务器
文科生网络安全吗
软件开发服务是研发服务吗
网络安全数据库修改
数据库表字段名有哪些
默认地理数据库设置
数据库链接地址怎么填
查看服务器文件系统
伟创网络技术公司招聘
做好网络安全家庭教育
河北天保网络技术
香港服务器经营网站
北京水木清艺软件开发中心
网络安全细分行业
发言人谈网络安全
dcom服务器进程启动器