简单介绍一下MySQL中有多种类型的锁

2024年10月04日 建站教程

​MySQL中的锁有哪些?下面web建站小编给大家简单介绍一下各种锁的运用语法!

1、共享锁(读锁):S锁,允许一个线程读数据,阻止其他线程写数据。

SELECT * FROM table1 WHERE ... LOCK IN SHARE MODE;

2、排他锁(写锁):X锁,允许一个线程写数据,阻止其他线程读或写数据。

SELECT * FROM table1 WHERE ... FOR UPDATE;
FOR UPDATE子句会自动加排他锁。

3、自动增长锁:当在具有自动增长列的表上执行INSERT语句时,MySQL会自动添加一个排他锁,以确保自动增长值的安全性。

CREATE TABLE table1 (
  id INT AUTO_INCREMENT,
  ...
)
INSERT INTO table1 (col1, col2) VALUES (..., ...);
# 这里会自动加一把排他锁

本文链接:http://so.lmcjl.com/news/14614/

展开阅读全文
相关内容