理解事务隔离级别

事务控制:一组操作要么完全执行,要么完全不执行。在指定一组操作为事务时可以指定其隔离级别。

事务隔离级别:不同的事务隔离级别其本质为采用了不同的加锁机制(写加X锁,读是否加S锁,读/写完成释放还是事务完成后释放等)。使用哪一种隔离级别要考虑业务需求,平衡性能问题与数据一致性问题。(隔离级别越高,阻塞越多,并发性越差,吞吐率下降)若不设置隔离级别,我们也可以通过原语操作解决数据不一致问题,但是很麻烦。

并发控制技术:数据库产品实现了的协议。

一、二、三级加锁协议表示某种加锁机制,

 

事务的原子性并不是指平常理解的不会被打断的操作,而是指事务完整的执行,中间有失败则回滚,完全的不执行。事务A执行未提交时有可能执行事务B,因此在并发环境下有可能出现脏读,幻读,不可重复读的问题。

因此,将一组操作设置为事务与将一组操作加锁是不一样的。

隔离级别不到串行化的事务会并发的执行,实现事务的锁是对数据加锁,事务A对数据D加了写锁,在其释放前,其他事务不能读写数据D。

将一组操作加锁,则使用同一个锁对象的线程会被阻塞。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值