面试真题

数据库 · 中等 · 腾讯

MySQL事务隔离级别是如何实现的?

中等 数据库 🎤 腾讯
参考答案
结论:MySQL InnoDB通过MVCC多版本并发控制与锁机制实现四种隔离级别。核心要点:1.读未提交:不加锁直接读最新数据,可能脏读;2.读已提交:每次查询生成ReadView,仅看已提交版本,解决脏读;3.可重复读:事务首次查询建ReadView,整个事务用同一视图,配合Next-Key Lock防幻读;4.串行化:读写均加锁,完全串行。原理:每行有隐藏事务ID与回滚指针,undo log链存历史版本;MVCC靠ReadView对比事务ID判断可见性;锁包括行锁、间隙锁。对比:RC和RR主要差在ReadView生成时机与防幻读机制。
题目整理自公开面经,答案由校招宝自研生成,仅供参考