行级锁 表级锁 乐观锁 悲观锁

 行级锁 表级锁 乐观锁 悲观锁

区分锁,得先知道锁是什么干什么。就我的理解锁的意义就是为了确保数据库事务的特性(ACID)

A——原子性atomicity                            事务的不可分割

C——一致性consistency                       事务的执行的前后数据的完整性保持一致

I——隔离性isolation                              一个事务执行的过程应不受到其他事务的干扰

D——持久性durability                            事务一旦结束,数据就持久到数据库

锁主要解决多个用户同时对数据库的并发操作带来的数据不一致性:

       丢失更新,脏读,不可重复读,幻读

1.行级锁

就是给某一行加上锁,也就是一条记录加上锁

2.表级锁

就是给这个表加上锁

3.乐观锁

(假设丢失更新不会发生)采用程序中添加版本字段解决丢失更新问题,在数据表添加版本字段。每次修改过记录后,版本字段都会更新,如果读取是版本字段,与修改时版本字段不一致,说明别人进行修改过数据 (重改) 。

4.悲观锁

(假设丢失更新一定会发生 )利用数据库内部锁机制,管理事务提供的锁机制。

           锁机制:            1)共享锁       2)排他锁

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值