MySQL的RR需要gap lock来解决幻读问题。而RC隔离级别则是允许存在不可重复读和幻读的。所以RC的并发一般要好于RR;
RR隔离级别,通过 where 条件走非索引列过滤之后,即使不符合where条件的记录,也是会加行锁。所以从锁方面来看,RC的并发应该要好于RR;可以减少一部分锁竞争,减少死锁和锁超时的概率。
读提交(Read Committed)
- 数据库领域,事务隔离级别的一种,简称RC
- 它解决“读脏”问题,保证读取到的数据行都是已提交事务写入的
- 它可能存在“读幻影行”问题,同一个事务里,连续相同的read可能读到不同的结果集
可重复读(Repeated Read)
- 数据库领域,事务隔离级别的一种,简称RR
- 它不但解决“读脏”问题,还解决了“读幻影行”问题,同一个事务里,连续相同的read读到相同的结果集
RR下,大事务嵌套几个小事务,第一个小事务写操作提交后,后面的小事务不能读取到第一个小事务提交的内容;
RC下,大事务嵌套几个小事务,第一个小事务写操作提交后,后面的小事务可以读取到第一个小事务提交的内容;
标签:事务,场景,隔离,RR,提交,RC,级别 来源: https://www.cnblogs.com/ukzq/p/16669019.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。