请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于select for update当前读的问题

请问一下,老师的mysql隔离级别是RR是吗?
这样的话,在同一个事物中,select和select for update读到的数据确实可能不一致(另一个事务中修改了),但是如果是RC隔离级别的话, 这两种select语句查询到的数据就一致了吧?
还有一个问题就是,读未提交,读已提交,可重复读这三种隔离级别的使用场景一般都是什么啊

正在回答 回答被采纳积分+3

1回答

Er十七 2023-11-06 15:16:46

同学,你好。第一点,对于读已提交这个事务隔离级别,是会出现select和select for update读取到的数据是一致的,因为当其他事务提交后,就可以被当前事务读取到了。那对于不同的隔离级别,每种的作用大家都知道,使用场景呢,首先读未提交,这种事务隔离级别呢,会出现脏读,其实这种隔离级别基本上是不会被使用到,工作中我们也是禁止设置这种级别。读已提交这种隔离级别,对于一些对数据一致性没有那么高要求的场景可以使用,比如日志,报表这种。那可重复读这种隔离级别使用场景就很多了,数据一致性要求比较高的可以使用,也是普遍业务场景中使用到的。串行化这个级别也不推荐使用,对于更严格的数据一致性,可以在业务上,通过锁机制来保证。

1 回复 有任何疑惑可以回复我~
  • 提问者 10000h丶 #1
    谢谢老师~
    回复 有任何疑惑可以回复我~ 2023-11-06 15:29:16
  • Er十七 回复 提问者 10000h丶 #2
    😃😃😃
    回复 有任何疑惑可以回复我~ 2023-11-06 15:55:18
问题已解决,确定采纳
还有疑问,暂不采纳
Java主流分布式解决方案多场景设计与实战
  • 参与学习       134    人
  • 解答问题       34    个

本课程是一门关于分布式系统下常见的解决方案的课程

了解课程
意见反馈 帮助中心 APP下载
官方微信