Below you will find pages that utilize the taxonomy term “隔离级别”
June 20, 2019
一文读懂 MySQL 的隔离级别和锁的关系
"\u003cp\u003eMySQL 中的隔离四种隔离级别与锁的关系一直挺模糊的,看了好多文章感觉着都不是很好理解,今天在“\u003ca href=\"https://mp.weixin.qq.com/s/DhMy6fsdlFj3dGqRE_0JMg\"\u003e爱可生开源社区\u003c/a\u003e”看到一篇文章,感觉着挺容易理解的。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e\u003ccode\u003eREAD UNCOMMITTED 未提交读,可以读取未提交的数据。\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eREAD COMMITTED 已提交读,对于锁定读(select with for update 或者 for share)、update 和 delete 语句, InnoDB 仅锁定索引记录,而不锁定它们之间的间隙,因此允许在锁定的记录旁边自由插入新记录。\u003c/code\u003e Gap locking 仅用于外键约束检查和重复键检查。\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eREPEATABLE READ 可重复读,事务中的一致性读取读取的是事务第一次读取所建立的快照。\u003c/code\u003e\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eSERIALIZABLE 序列化\u003c/code\u003e\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e文中主要对 RR 和 RC 两种常用的隔离级别做了不同情况的说明,对于 \u003ccode\u003eSERIALIZABLE 序列化\u003c/code\u003e 和 READ UNCOMMITTED 未提交读,由于很好理解所以未在文中体现。**对于 RR 和 RC 主要区别是 RR 存在 Gap Lock间隙锁,而RC则 …\u003c/p\u003e"