MySQL是一个流行的关系型数据库管理系统,而InnoDB是MySQL中一种常用的存储引擎。在并发访问数据库的情况下,为了保证数据的一致性和完整性,MySQL InnoDB引擎采用了不同类型的锁机制。本文将介绍MySQL InnoDB锁的分类以及相应的源代码示例。
- 共享锁(Shared Lock)
共享锁也称为读锁,多个事务可以同时持有共享锁,用于读取数据而不会修改它。当一个事务持有共享锁时,其他事务可以同时获取相同的共享锁,但不能获取排他锁。共享锁的目的是允许多个事务同时读取同一份数据,从而提高并发性能。
下面是一个获取共享锁的示例代码:
-- 开启事务
START TRANSACTION;
-- 获取共享锁
SELECT * FROM table_name