前言 数据库通过锁以及锁协议来进行并发控制,解决并发事务带来的问题,本篇博文主要是解析数据库的锁协议和Mysql的默认存储引擎InnoDB的锁机制。 如果对事务隔离级别以及并发事务带来的问题不熟悉可以翻阅我的另外一篇博文–《解析事务隔离(事务隔离是如何解决脏读、幻读、不可重复读等问题)》 这篇文章中会涉及一些MVCC以及快照读、当前读的概念,如果不是很了解可以翻阅我另外一篇关于MVCC在InnoDB中实现原理的博文–《InnoDB的MVCC实现原理(InnoDB如何实现MVCC以及MVCC的工作机制)》。 锁协议 在介绍锁之前,我先介绍下锁协议,锁协议规定了何时加锁、释放锁的规则,不同的规则可