ACID
原子性
一致性
隔离性
持久性
事务完成后,该事务对数据库的更改持久到数据库中,更改是永久的
隔离级别
读未提交
读提交
可重复读
一个事务在执行过程中所看到的数据总是和这个事务启动时看到的数据是一致的
序列化
对同一行数据,读会加读锁,写会加写锁,读写锁冲突,必须等其中一个事务完成,另一个事务才可以继续

- 读未提交 v1是2 v2是2 v3是2
- 读提交 v1是1 v2是2 v3是2
- 可重复读 v1是1 v2是1 v3是2
- 序列化 v1是1 v2是1 v3是2
MVCC
事务在启动时候mysql会启动一个视图,访问的时候以视图为准,在可重复读隔离级别下,视图在事务启动的时候就创建,而在读提交隔离级别下,视图是在事务中的sql开始执行的时候创建的,其他隔离级别没有视图的概念
