MySQL数据库事务隔离级别学习总结

MySQL提供多种事务隔离级别,可以按照不同的场景进行设置,从而达到目的。以下内容就各种事务隔离级别进行简单梳理和总结,如果有不对或者不完善的地方,大家可以指出。

READ UNCOMMITED(读未提交)

允许事务读取其他事务未提交的数据修改,属于最低级别。
该级别下可能导致脏读、不可重复读和幻读问题。

READ COMMITED(读已提交)

允许事务只能读取其他事务已经提交的数据修改。
该级别下避免了脏读,但是会出现不可重复读和幻读问题。

REPEATABLE READ(可重复读)

保证同一个事务多次读取数据的一致性。其他并发事务对数据的修改对当前事务时不可见的,避免了脏读和不可重复读,但是会产生幻读问题。

SERIALIZABLE(串行化)

最高级别的隔离级别,强制事务串行执行,避免了脏读、不可重复读和幻读问题

总结

1.以上事务级别按照数据一致性排序是由低到高,但是按照并发性能排序是由高到低。
2. 关于不可重复读和幻读问题说明:

  • 不可重复读:指同一个事务内多次读取数据会出现不一致,重点强调数据的修改。
  • 幻读:指同一个事务内按照相同查询条件获取到的数据不一致,重点强调数据的插入和删除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值