美团二面时被问到MySQL的InnoDB锁的类型和区别,答完以后面试官说整体是对的,但是细节上有点问题,想问问各路大神,这样回答是哪里不对吗?回答如下: 共享锁与排他锁: lock in share mode:共享锁,可用于读锁 for update:排他锁,可用于写锁 共享锁与排他锁之间互相排斥(读写互斥) 共享锁与排他锁之间不排斥(读读共享) 排他锁与排他锁之间互相排斥(写写互斥) InnoDB有行级锁(行级别)。 主键索引或唯一索引:行级锁 非唯一索引:Next-Key Lock = 行级锁+间隙锁gap(防止幻读) 无索引:退化为表级锁 InnoDB有意向锁(表级别)。 当其他事务需要...