后端岗位面试题更新 2026-08-05

在可重复读隔离级别下,InnoDB 是如何解决幻读问题的?

美团后端开发互联网/IT风险判断技术原理InnoDB

考察说明

考察对 InnoDB 隔离级别实现机制的理解,特别是 MVCC 与间隙锁配合解决幻读的原理

回答思路

  1. 说明可重复读下的快照读通过 MVCC 避免幻读,基于事务开始时的快照
  2. 说明当前读(如 SELECT ... FOR UPDATE)通过加锁(记录锁+间隙锁/Next-Key Lock)防止插入幻行
  3. 能区分快照读与当前读两种场景下的不同机制
  4. 能指出仅在特定条件下(如使用当前读)才能完全杜绝幻读,快照读在部分场景下可能仍有幻读
  5. 能解释 Next-Key Lock 是记录锁与间隙锁的组合,覆盖范围查询涉及区间
  6. 能说明该机制在并发插入时的阻塞效果,以及可能产生的死锁风险
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。