mysql事务的四种隔离级别

声明: 此文章仅限于记录学习之用 , 受限于自身水平和理解能力 , 因此结论可能是不正确的.

相关概念

脏读

在此次事务中读取到了其他事务中未提交的内容.

幻读

同一次查询,执行两次 得到的结果集是不一致的(侧重数量增多或者减少).
原因: 其他事务对数据进行了 insert 或者 delete操作

不可重复读

在一个事务内条件相同的查询,执行两次, 得到的结果是不一致的. (侧重行结果)
原因: 其他事务对数据进行了update操作.

可重复读

在一个事务内条件相同的查询得到的结果是一致的.

情景展示

脏读

在这里插入图片描述

幻读

在这里插入图片描述

不可重复读

在这里插入图片描述

可重复读

在这里插入图片描述

隔离级别

在这里插入图片描述

读未提交(READ UNCOMMITTED)

解释:没有加限制.

读已提交(READ COMMITTED)

解释:读取commit之后的数据.
作用: 解决了脏读.

可重复读 (REPEATABLE READ)

解释: 事务读取不受其他事务影响. 即使其他事务改掉了数据.
原理: 采用MVVC(多版本并发控制)的方法. 简单来说就是在事务开始时生成一次快照, 本次事务中的数据从快照中获取,

串行化(SERIALIZABLE)

解释:事务按照顺序执行, 相当于单线程. 必须等一个事务完成后,才能开始另一个事务

参考文章

https://zhuanlan.zhihu.com/p/117476959

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值