对mysql乐观锁、悲观锁、共享锁、排它锁、行锁、表锁概念的理解

先说事务的特性,要想成为事务,必须满足:ACID(原子性,一致性,隔离性,持久性)四特性

原子性

(Atomic)(Atomicity)

事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。

一致性

 

事务在完成时,必须使所有的数据都保持一致状态。

隔离性

 

由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。

持久性

 

事务完成之后,它对于系统的影响是永久性的。该修改即使出现致命的系统故障也将一直保持。

乐观锁

乐观锁不是数据库自带的,需要我们自己去实现。乐观锁是指操作数据库时,认为这次的操作不会导致冲突,在操作数据时,并不进行其他的特殊处理(也就是不加锁),而在进行更新后,再去判断是否有冲突了。

 

 

悲观锁

与乐观锁相对应的就是悲观锁了。悲观锁就是当一个事务对  数据进行操作的时候对数据加“锁”,在此事务没有提交之前,其他事务是不能操作该数据的,只有这个事务结束提交后,其他事物才能对它进行操作。

 

共享锁

共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不能修改。

 

排它锁

排它锁与共享锁相对应,就是指对于多个不同的事务,对同一个资源只能有一把锁。

 

 

行锁


行锁,由字面意思理解,就是给某一行加上锁,也就是一条记录加上锁。

 

 

表锁


表锁,和行锁相对应,给这个表加上锁。
 

 

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值