间隙锁,锁的就是两个值之间的空隙。Mysql默认级别是repeatable-read,有办法解决幻读问题吗?间隙锁 在某些情况下可以解决幻读问题。 假设account表里数据如下: 那么间隙就有 id 为 (3,10),(10,20),(20,正无穷) 这三个区间, 在Session_1下面执行 update account set name = 'zhuge' where id > 8 and id <18;,则其他Session没法在这个范围所包含的所有行记录(包括间隙行记录)以及行记录所在的间隙里插入或修改任何数据,即id在(3,20]区间都无法修改数据,注意最后那个20也是包含在内的。 间隙锁是在可重复读隔离级别下才会生效。
标签:20,间隙,幻读,Lock,Gap,Session,id From: https://www.cnblogs.com/zhf123/p/17196618.html