数据库事务必须具备ACID特性

Posted IT知识免费共享

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库事务必须具备ACID特性相关的知识,希望对你有一定的参考价值。

事务(Transaction)是并发控制的基本单位。所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。例如,银行转帐工作:从一个帐号扣款并使另一个帐号增款,这两个操作要么都执行,要么都不执行。


数据库事务必须具备ACID特性,ACID是Atomic(原子性)、Consistency(一致性)、Isolation(隔离性)和Durability(持久性)的英文缩写。


01

原子性(Atomicity)

   数据库事务必须具备ACID特性

一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样。


02

数据库事务必须具备ACID特性

一致性(Consistency)

数据库事务必须具备ACID特性

事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态。如果事务成功地完成,那么系统中所有变化将正确地应用,系统处于有效状态。如果在事务中出现错误,那么系统中的所有变化将自动地回滚,系统返回到原始状态。


03

数据库事务必须具备ACID特性

隔离性(Isolation)

数据库事务必须具备ACID特性

指的是在并发环境中,当不同的事务同时操纵相同的数据时,每个事务都有各自的完整数据空间。由并发事务所做的修改必须与任何其他并发事务所做的修改隔离。事务查看数据更新时,数据所处的状态要么是另一事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看到中间状态的数据。


04

数据库事务必须具备ACID特性

持久性(Durability)

指的是只要事务成功结束,它对数据库所做的更新就必须永久保存下来。即使发生系统崩溃,重新启动数据库系统后,数据库还能恢复到事务成功结束时的状态。


更多精彩文章:

■ 

■ 


■ 

■ 

■ 

以上是关于数据库事务必须具备ACID特性的主要内容,如果未能解决你的问题,请参考以下文章

事务的ACID特性

事务ACID特性

事务的ACID特性

数据库 事务的特性ACID

关系型数据库事务的ACID特性与实现

事物的ACID特性