MySQL——事务概述(2)

ACID指出每个事务型RDBMS必须遵守的4个属性,即原子性、一致性、孤立性和持久性。

原子性

这就类似与化学中的原子,事务也具备整体性和不可分割性,被认为是一个不可分割的单元。假设一个事务由多种任务组成,其中的语句必须同时操作成功,才可以认为事务是成功的,否则将回滚到初始状态。从上面网上交易的例子可以看出,所有操作的成功是保证交易完成的前提条件,当任何一个环节出现问题时,就导致事务回滚,不能正常完成交易过程。即所有事务共同进退,保证了事务的整体性,这就是事务的原子性。

原子的执行是一个全部发生或全部失败的整体过程。在一个原子操作中,如果事务中的任何一条语句失败,前面执行的语句都将被返回,以保证数据的整体性不被破坏。这在常用的系统应用中,为保证数据的安全性起到一定作用。

一致性

在MySQL事务处理过程中,无论事务是完全成功或是在中途因某些环节失败而导致失败,但事务使系统处于一致的状态时,其必须保证一致性。如在网上进行转账操作的过程中,用户A向用户B的账户中转入5 000元,但用户B在查询转账信息的时候,发现自己的账户中只增加了3 000元,这样不能使整个事务达到一致性。例如,从上述网上交易的例子考虑,当交易完成后,商家的货物会减少,不可能出现当商家给用户发货后货物数量不变,而用户收到货物不增加的情况。

在MySQL中,一致性主要由MySQL的日志机制处理,它记录数据库的所有变化,为事务回复提供跟踪记录。如果系统在事务处理中间发生错误,MySQL恢复过程将使用这些日志发现事务是否已经完全成功执行或需要返回。一致性属性保证数据库从不返回一个未处理的事务。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值