为了账号安全,请及时绑定邮箱和手机立即绑定

请教各位一个问题,MySQL中隔离用rr好还是RC好?

请教各位一个问题,MySQL中隔离用rr好还是RC好?

HUWWW 2019-06-18 09:28:44
Mysql:既然可重复读RR事务隔离解决了幻读问题,那么serializable隔离相对于RR隔离有啥好处?
查看完整描述

2 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

Repeatableread能解决幻读?可重复读。在同一个事务内的查询都是事务开始时刻一致的,InnoDB默认级别。在SQL标准中,该隔离级别消除了不可重复读,但是还存在幻象读。

MySQL数据库中默认隔离级别为RR,但是实际情况是使用RC 和 RR隔离级别的都不少。好像淘宝、网易都是使用的 RC 隔离级别。那么在MySQL中 RC 和 RR有什么区别呢?我们该如何选择呢?为什么MySQL将RR作为默认的隔离级别呢?

查看完整回答
反对 回复 2019-06-18
?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

对于一般业务来说没啥好处,反而对性能有影响,对于特殊业务来说就比较方便
RR解决幻读是通过手动加锁来实现的,如果加锁不正确,还是会出现幻读,在不进行全表锁的情况下,很难避免其他事务不会对当前事务有影响。
所以,serializable的好处就是完全隔绝了其他事务对当前事务的影响,在开发人员对数据库理解不够的时候,使用serializable比手动加锁要安全
                            
查看完整回答
反对 回复 2019-06-18
  • 2 回答
  • 0 关注
  • 1484 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信