由低到高:
- read uncommitted(读未提交)
- read committed(读已提交):可避免脏读;
- repeatable read(可重复读):可避免脏读、不可重复读;
- serializable(串行化):可避免脏读、不可重复读以及幻读;
如果不考虑隔离性,可能会引起如下问题:
- 1、脏读:指一个事务读取了另外一个事务未提交的数据。
- 2、不可重复读:在一个事务内,多次读取表中的某一行数据,结果不同。
- 3、虚读(幻读)是指在一个事务内读取到了别的事务插入的数据,导致前后读取不一致。
脏读是读取前一事务未提交的脏数据,不可重复读是重新读取了前一事务已提交的数据。
各阶段会发生的问题: