mysql 事务的隔离级别

一、事务的隔离级别要解决的问题:
1)脏读:读到了其它事务未提交的数据即脏读,未提交意味着数据有可能会被回滚,也就是最终有可能不会存储到数据库中,
      即读到了最终不一定存在存在的数据,即为脏读
2)可重复读:在一个事务内,最开始读到的数据和事务结束前任意时刻读到的同一批数据都是一致的。通常针对数据的Update操作。
3)幻读:事务A对某些行的内容做了更改,但还未提交。
               此时事务B插入了与事务A更改前的记录相同的记录行,并且在事务A提交之前先提交了。
               此时,事务A的查询,会发现刚刚的更改不起作用,但其实是刚刚事务B插进来的。
               让用户很魔幻,像出现了幻觉一样,这就是幻读
二、SQL 标准定义了四种隔离级别,MySQL 全都支持。这四种隔离级别分别是:
   1. 读未提交(READ UNCOMMITTED)
   2. 读提交 (READ COMMITTED)
   3. 可重复读 (REPEATABLE READ)(mysql 默认)
   4. 串行化 (SERIALIZABLE)
从上往下,隔离强度逐渐增强,性能逐渐变差。采用哪种隔离级别要根据系统需求权衡决定,其中,可重复读是 MySQL(INNODB) 的默认级别
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值