自动提交与行锁

database

1、查看是否开启自动提交

show variables like "autocommit";

2、关闭自动提交

-- 当前客户端或session

set autocommit = 0;

-- 全局生效(或修改配置文件)

set global autocommit=0; ​​​​​​​

3、关于行锁

一般我们通过

select * from table where primary_key for update

获取行锁,如果where没有记录,那么获取不到锁。

4、经常遇到这种场景,如果该条记录不存在就新增,否则就修改,那么通过for update获取锁,然后判断记录数是否大于0的逻辑进行处理,无法避免并发情况下的索引冲突。这个时候应该使用on duplicate key update处理

以上是 自动提交与行锁 的全部内容, 来源链接: utcz.com/z/533881.html

回到顶部