MySql理解RR(可重复读)事务隔离级别

demo,理解mysql的可重复读隔离级别,当前读、快照读的区别

如下图,表sys_user中我同时开启三个事务连接:
在这里插入图片描述

session1:
在这里插入图片描述
当session1开启事务时,mysql使用快照读保存事务开始前的数据,所以这条事务未提交前,查询的结果都是最开始保存的数据。
无论session2还是session3,查询结构都是0。

session2

在这里插入图片描述
session2开启事务,执行一条update语句,mysql开始当前读,对当前修改的行加锁。此时查询出来的值是最新值。
查询结果是最新值。
session3
在这里插入图片描述
session3执行语句,此时它也想要修改数据,由于2还没提交事务,它只能等待2释放锁。

ps:如果session3先执行,他是自动提交事务的。session2就会在3的基础上在更新。

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值