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

在 MySQL InnoDB 中,哪些类型的 SQL 语句会触发行级锁?

万得信息后端开发互联网/IT技术原理MySQL

考察说明

考察对 InnoDB 行级锁触发条件的理解

回答思路

  1. 明确 SELECT 默认不加锁,普通查询是快照读
  2. 指出 UPDATE、DELETE、INSERT 会自动加行锁
  3. 说明 SELECT ... FOR UPDATE 和 SELECT ... LOCK IN SHARE MODE 会显式加锁
  4. 涉及索引条件下行锁的范围和间隙锁