为什么在 InnoDB 中,UPDATE 可能加上 gap 锁和 record 锁的组合(即 Next-Key Lock),而 INSERT 却不会?

答案解析

UPDATE需防止幻读,锁定区间和记录;INSERT只需判断区间是否有锁,不主动加gap锁,减少锁冲突。