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

如果有一张存储全国用户数据的表,每个用户一行,用户名字段已有索引但值可能不唯一。在一个事务中,当通过用户名查询某个用户的信息时,InnoDB 的锁范围是什么?此时能否插入新数据?

百度后端开发专业服务问题拆解风险判断技术原理InnoDBMySQL

考察说明

考察 InnoDB 索引锁与间隙锁的实际应用及边界条件

回答思路

  1. 能识别非唯一索引下查询会加共享锁(S锁)
  2. 准确说明锁定的范围包括匹配的索引记录及间隙
  3. 能区分不同隔离级别对锁和插入的影响
  4. 正确判断插入操作是否会被阻塞及其原因