默认RR,历史遗留问题
使用rc大多还是为了效率,并发的时候效率高一点。
rr主要是我没想明白有啥用,一个事务commit的数据另外一个事务查不到的好处是啥。
另外这个rr也不是数据库原理传统意义的rr隔离级别,那个rr是读的数据加锁了
传统意义的rr:所有被Select获取的数据都不能被修改,这样就可以避免一个事务前后读取数据不一致的情况。
代码实现估计有修改,导致不同结果
有些场景是需要RR的,比如涉及主从数据库数据同步的时候,RC隔离级别和RR隔离级别下的从库得到的结果是不一样的,RC隔离级别下会造成从库的数据错乱。
可以看下这篇文章,里面的案例讲述的还是比较清楚:我的阿里二面,为什么MySQL选择REPEATABLE READ作为默认隔离级别?-HollisChuang's Blog
你说的是很多年前的事了,现在同步用row跑
设置了事务隔离级别了吗
没有这现象了吧,我模拟不出来呢
RC可以