1 背景知识
1.1 快照读
select * from table where [case];
读取事物序列号对应的快照(readView) ,所以不会出现幻读,也不会触发锁;
关于 mysql...的log ,readView相关,可参读 : mysql事物(1) - 背景知识:log,readView
1.2 当前读
select * from table where [case] for update.../ in share mode;
insert , update ,delete
读取最新版本数据,会触发锁;
1.3 隔离级别
不同的隔离级别,对待锁的处理也是不一样的,这里我们以MYSQL 5.7...,innoDB引擎下,RR(repeatable-read)级别探讨;
隔离级别相关,参读 : mysql事物(2) - 隔离级别
2 示例表
2.1 表名
t
2.2 表结构和数据
id(主键索引...聚簇索引 / 非聚簇索引 参读 : mysql事物(0) - 索引结构
image-4521fba1411143daaaa5fd3fde71c9b1.png
举例1 - 主键索引(聚簇索引) -