在MySQL数据库中,锁是用于控制并发访问的重要机制。它们可以防止多个会话同时修改或访问同一数据,以维护数据的一致性和完整性。本文将介绍MySQL中的几个常见锁概念:排他锁、行锁、表锁和死锁,并提供相应的源代码示例。
- 排他锁(Exclusive Locks):
排他锁也被称为写锁,它是最严格的锁类型。当一个事务获取了排他锁后,其他事务将无法同时获取该资源的任何锁,包括共享锁和排他锁。只有当前持有排他锁的事务释放了锁,其他事务才能获得对该资源的访问权限。
下面是一个使用排他锁的示例代码:
-- 创建表
CREATE TABLE products (
id INT PRIMARY KEY,
name VARCHAR