Session Bz执行select for update同样也会加上间隙锁,间隙锁之间并不冲突,因此可以执行成功 Session B尝试插入(9,9,9),被Session A的间隙锁阻塞,只好进入等待 Session A尝试插入(9,9,9),被Session B的间隙锁阻塞此时两个Session形成死锁等待,InnoDB的死锁检测发现死锁关系,让Session A的insert 语句报错返回 。
间隙锁是在可重复读隔离级别下才会生效,如果将隔离级别设置为读提交,就不会有间隙锁了,但是同时需要解决数据和日志不一致的问题(需要把binlog格式设置为ROW) 。
推荐阅读
-
-
琪琪欧尼酱京东店群模式怎么操作,京东店群模式是怎么做的
-
女生,大学毕业后留在上海独自打拼两年,依然一无所有,最近常常迷茫,是不是该回家呢
-
尚之潮|25年两人都是零绯闻,如今生活更甜美,他们戏里戏外都是夫妻
-
每天可检测2-3万人 全国首辆智能化核酸检测车交付使用
-
售价144FPS+320Hz 努比亚红魔5S发布3799元起
-
衡水广播电视台|百余名党员学习身边榜样 重温入党誓词,迎七一
-
-
-
-
-
穿搭|唐嫣颜值太真实,连直男视角都扛得住,罗晋没出镜却满满恩爱感
-
联想之星|联想之星1个月收获2个IPO,回报超10亿【星医疗】,燃石医学成功IPO
-
-
-
-
-
|在职场上如何提升自己的价值,如何提升自己的核心竞争力
-
人民币|中国“人民币”要改名了?外国人这样称呼人民币,你能接受么?
-