新问题
- mysql的隔离级别种类和差别;
知识点
-
read-uncommitted: 读未提交;
- 最低隔离级别;
- 会导致脏读、幻读和不可重复读;
-
read-committed: 读已提交;
- 可阻止脏读,但有幻读和不可重复读的现象;
-
repeatable-read: 可重复读;
- 可阻止脏读和不可重复读,但有幻读的现象;
-
serializable: 可串行化
- 最高隔离级别;
脏读:一般出现在事务A读取了事务B更新的数据,B rollback,A读到的就是脏数据;update操作;
幻读:事务A读取了数据,事务B insert了数据,A select后发现一些原本不存在的数据,这就是幻读;insert, delete操作;
不可重复读:出现在RC,也是因为update操作;
mysql默认的是RR,在保证serializable隔离的级别下,又能保持良好的并发性能。
上手操作
select @@transaction_isolation;
课程视频
mysql_coldknowlegde_lesson14on bilibili
mysql_coldknowlegde_lesson14on xigua