起底InnoDB锁子系统-事务锁细节解析


当前大多数材料介绍InnoDB锁机制基本都是从锁分析的层面,对于InnoDB加锁的细节并没有过多的披露。比如材料会介绍某个场景InnoDB会对哪些记录加锁、加何种锁;但是没有介绍是如何InnoDB完成的加锁、锁结构是如何的。本文的内容将深入介绍InnoDB的事务锁子系统,将解读InnoDB行级锁为什么性能损耗不是很大、锁实例维护的对象如何组织、加锁过程是如何完成的、锁对象是如何维护的。

InnoDB的事务锁子系统

内部锁相关数据结构

表级锁

TABLE LOCK_IS

TABLE LOCK_IX

加锁过程分析

行级锁

行级锁组织结构

隐式行级锁处理

显式行级锁处理

显示S锁

显式X锁

GAP锁处理

锁释放

死锁检测

本文采用CC BY-SA许可发布,您可以自由的转载分享。

转载请保留出处 BeanMr.
http://blog.beanmr.com/2016/07/21/innodb-lock-detail/