最简单理解Mysql共享、排他锁和乐观、悲观锁

淡淡的烟草味﹌ 2022-05-10 12:38 229阅读 0赞

共享锁
select * from xx where id = 10 lock in share mode

排他锁
select * from xx where id = 10 for update

乐观锁
select num,version from xx where id = 10
update xx set num=num-1 where id =10 and xx.version = 32

悲观锁
select num from xx where id = 10 for update
update xx set num=num-1 where id = 10

乐观锁和悲观锁不是真实存在的锁,是两个使用场景,其中悲观锁用到了排它锁,乐观锁没有用锁,可能提交失败,可尝试多次重试

发表评论

表情:
评论列表 (有 0 条评论,229人围观)

还没有评论,来说两句吧...

相关阅读

    相关 mysql 共享

    mysql 引擎:MyISAM不支持事务,InnoDB支持事务、行级锁、高并发。 排他锁: 排他锁又称为写锁,简称X锁,顾名思义,排他锁就是不能与其他所并存,如一个事务获取

    相关 共享以及乐观

    共享锁 如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁。获准共享锁的事务只能读数据,不能修改数据。 排他锁 排他锁(X锁):用于数据修