数据库的各种锁(乐观锁,悲观锁等等各种锁)

2018-08-23  本文已影响23人  一个喜欢烧砖的人

我们才操作数据库的时候,可能会因为并发问题一起一系列的数据不一致的问题(数据冲突)
这时就需要锁了,

乐观锁

悲观锁

1、共享锁
2、排它锁
行锁

行锁,由字面意思理解,就是给某一行加上锁,也就是一条记录加上锁。
比如之前演示的共享锁语句
SELECT * from city where id = "1" lock in share mode;
由于对于city表中,id字段为主键,就也相当于索引。执行加锁时,会将id这个索引为1的记录加上锁,那么这个锁就是行锁

表锁

表锁,和行锁相对应,给这个表加上锁。
MyISAM引擎里有的,暂时研究了

死锁

指两个事务或者多个事务在同一资源上相互占有,并请求对方所占资源,从而造成恶性循环的现象

上一篇 下一篇

猜你喜欢

热点阅读