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

如果将 WHERE 条件中的 id 改为按普通索引列 x 查询,执行 "UPDATE s SET x=5 WHERE x>5" 时锁的范围和机制会有什么变化?

字节跳动后端开发互联网/IT风险判断技术原理InnoDBMySQL

考察说明

考察按非主键索引列更新时锁定的范围、回表和可能升级到表锁的情况

回答思路

  1. 说明先锁二级索引记录和对应主键记录
  2. 指出二级索引范围加锁会包括间隙
  3. 分析大量无索引回表或扫全表时是否升级表锁