码迷,mamicode.com
首页 > 数据库 > 详细

Mysql数据库事务详解

时间:2015-11-05 10:14:48      阅读:286      评论:0      收藏:0      [点我收藏+]

标签:

80年代中国人结婚四大件:手表、自行车、缝纫机、收音机(三转一响)。要把事务娶回家需要四大件,所以事务很刻薄(ACID),四大件清单:原子性(Atom)、一致性(Consistent)、隔离性(Isolate)、持久性(Durable)。ACID就是数据库事务正确执行的四个基本要素的缩写。

 

  1. 原子性:要么不谈,要谈就要结婚!

 

对于其数据修改,要么全都执行,要么全都不执行。如果系统只执行这些操作的一个子集,则可能会破坏事务的总体目标。最典型的问题就是银行转帐问题。

 

  1. 一致性:恋爱时,什么方式爱我;结婚后还得什么方式爱我;

 

数据库原来有什么样的约束,事务执行之后还需要存在这样的约束,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)、完整性约束(索引、主键)都必须是一致的。

 

  1. 隔离性:闹完洞房后,是俩人的私事。

 

事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。当事务可序列化时将获得最高的隔离级别。隔离性是事务机制里相对来说,比较复杂的,下文另说。

 

  1. 持久性:一旦领了结婚证,无法后悔。

修改即使出现致命的系统故障也将一直保持。不要告诉我系统说commit成功了,回头电话告诉我,服务器机房断电了,我的事务涉及到的数据修改可能没有进入数据库。

Mysql数据库事务详解

标签:

原文地址:http://www.cnblogs.com/xgspring/p/4938316.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!