温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Mysql中事物及隔离级别

发布时间:2020-05-01 16:06:45 来源:网络 阅读:1764 作者:feelgood3000 栏目:MySQL数据库

什么叫事务

事务就是一组sql组成的操作单元,要么操作全部成功,要么全部失败。

ACID属性

原子性(atomicity)

一个事物必须被视为一个不可分割的最小工作单元,整个事务要么全部成功,要么全部失败回滚,对一个事物来说,不可能只执行其中的一部分操作。

一致性(consistency)

数据库总是从一个一致的状态转换到另外一个一致的状态。比如总共两个update,在第一个update后,系统崩溃了,也不会对数据有影响,因为事务没提交。

隔离性(isolation)

一个事务所做的修改在最终提交以前,对其他事务是不可见。

持久性(durability)

一旦事务提交,则所做的修改就会永久保存到数据库中。

事务隔离级别

并发事务带来的问题:

  • 脏读
    事务可以读取未提交的数据,叫脏读。
  • 不可重复读
    一个事务开始时,只能读取已经提交事务所做的修改。换句话说,一个事务从开始直到提交之前,所做的任何修改对其他事务都是不可见的。执行两次同样的查询,可能会得到不一样的结果。
  • 幻读
    是指当某个事务读取某个范围内的记录时,另外一个事务在该范围内插入了新的记录,当之前的事务再次读取该范围的记录时,会产生幻行。
隔离级别 脏读可能性 不可重复读可能性 幻读可能性
read uncommitted Yes Yes No
read committed No Yes Yes
repeatable read No No Yes
serializable No No No
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI