请稍等 ...
×

采纳答案成功!

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

作业1:企业级开发中通常会把事务隔离级别设置为 Read Committed,你能说出这样做的理由吗 ?(可以对比其他隔离级别的劣势去解释)

保证数据的读取都是最新的,同时保证的数据查询的效率,至于为什么不设置高一点,应该是能在代码逻辑方面能够做到处理高并发下可能出现的幻读和不可重复读,而代码逻辑上造成的性能损耗比数据库中设置高等级造成的性能损耗要小吧

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

插入代码

1回答

张勤一 2020-11-27 19:57:38

同学你好:

    MySQL 的默认隔离级别是“可重复读”,但是,我们在工作中几乎都是在使用“读已提交”这个隔离级别,那么,其中的原因有以下三点:

    (1)在RR隔离级别下,存在间隙锁,导致出现死锁的几率比RC大的多

    (2)在RR隔离级别下,条件列未命中索引会锁表,而在RC隔离级别下,只锁行

    (3)在RC隔离级别下,半一致性读 (semi-consistent) 特性增加了 update 操作的并发性


    欢迎来 QQ 群随时交流、讨论,也非常感谢同学的支持!

1 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信