锁理论
https://dev.mysql.com/doc/refman/5.6/en/innodb-locking.html
锁级别 | 锁名 | 锁模式 | 锁范围 |
表级别 | 读意向锁 | lock mode IS | |
表级别 | 写意向锁 | lock mode IX | |
行级别 | 读锁 | lock S | |
行级别 | 写锁 | lock X | |
行级别 | 行锁(单行) | lock_mode X locks rec but not gap | 锁单行 |
行级别 | GAP锁 | lock_mode X locks gap before rec | 间隙 |
行级别 | next-key lock | lock_mode X | 左开右闭 |
行级别 | 插入意向锁 | lock_mode X locks gap before rec insert intention | 间隙 |
表级锁 | 自增锁 |
select * from t ; 快照读,MVCC实现。
select * from t lock in share mode; 当前读,lock S锁。
select ENGINE,THREAD_ID,EVENT_ID,OBJECT_SCHEMA,OBJECT_NAME,INDEX_NAME, LOCK_TYPE,LOCK_MODE ,LOCK_STATUS,LOCK_DATA from performance_schema.data_locks ;