mysql事物隔离级别

事物的隔离级别分为以下几种:

1.读未提交 (read-uncommitted) ------------------------>脏读、不可重复读、幻读                

2.读已提交| 不可重复读(read-committed)---------------->不可重复读、幻读

3.可重复读(repeatable-read)----------------------------->幻读

4.可串行化(serializable)-------------------------------->解决了以上三种问题,比较安全


读未提交:指单条数据 ,事物A再查询一条数据时,事物B对数据进行了修改,但未提交,此时事物A再次查询会查询到事物B未提交的事物,此时事物B回滚,那么事物A读到的数据就是脏数据,所以称为脏读


读已提交:指单条数据 ,事物A在查询的时候,结果事物B对事物进行了更改,事物A两次读的结果不一样,即不可重复读


可重复读:指多条数据 ,事物A在查询多条数据时,结果事物B在表里新插入了数据,此时事物B再查询两次结果不一样,以为产生了幻觉,所以称为幻读;


可串行化: 成功的解决了以上三种,但性能低下

 

 小结:不可重复读的和幻读很容易混淆,不可重复读侧重于修改,幻读侧重于新增或删除。解决不可重复读的问题只需锁住满足条件的行,解决幻读需要锁表

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值