开发者社区> 云栖-lxl> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

数据库事物四大特性-ACID

简介: 事务的:原子性、一致性、分离性、持久性   事物(transaction)是由一些列操作序列构成的执行单元,这些单元要么都做,要么不做,是一个不可分割的工作单元。数据库事物的四个基本性质(ACID)1.原子性(Atomicity)  指的是事物中包含的所有操作要么全做,要么全不做(all or none)。
+关注继续查看

事务的:原子性、一致性、分离性、持久性

  事物(transaction)是由一些列操作序列构成的执行单元,这些单元要么都做,要么不做,是一个不可分割的工作单元。

数据库事物的四个基本性质(ACID)

1.原子性(Atomicity)

  指的是事物中包含的所有操作要么全做,要么全不做(all or none)。

  例如银行取款事务分为2个步骤(1)存折减款(2)提取现金。不可能存折减款,却没有提取现金。2个步骤必须同时完成或者都不完成。

2.一致性(consistency)

  在事物开始以前,数据库处于一致性的状态,事物结束后,数据库也必须处于一致性的状态。

  拿银行转账来说,一致性要求事务的执行不应改变A、B 两个账户的金额总和。如果没有这种一致性要求,转账过程中就会发生钱无中生有,或者不翼而飞的现象。事务应该把数据库从一个一致性状态转换到另外一个一致性状态。

3.隔离性(Isolation)

  分离性指并发的事务是相互隔离的。即一个事务内部的操作及正在操作的数据必须封锁起来,不被其它企图进行修改的事务看到。假如并发交叉执行的事务没有任何控制,操纵相同的共享对象的多个并发事务的执行可能引起异常情况。

  对于任何一对事务T1和T2,在事务T1看来,T2要么在T1开始之前执行,要么在T1完成之后才开始执行,这样,每个事务都感觉不到系统中有并发事务执行。

4.持久性(Durability)

  持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失。即一旦一个事务提交,DBMS保证它对数据库中数据的改变应该是永久性的,即对已提交事务的更新能恢复。持久性通过数据库备份和恢复来保证。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
数据库的三大范式
当你应聘后端岗位的时候,数据库的知识必不可少,今天给大家分享一下数据库三大范式的通俗理解
23 0
人大金仓数据库使用uuid
人大金仓数据库使用uuid
216 0
数据库锁
数据库锁
39 0
26个例子来搞懂数据库锁
  1 前言   数据库大并发操作要考虑死锁和锁的性能问题。看到网上大多语焉不详(尤其更新锁),所以这里做个简明解释,为下面描述方便,这里用T1代表一个数据库执行请求,T2代表另一个请求,也可以理解为T1为一个线程,T2 为另一个线程。T3,T4以此类推。下面以SQL Server(2005)为例。   2 锁的种类共享锁(Shared lock)。   例1:   ----------------------------------------   T1: select * from table (请想象它需要执行1个小时之久,后面的sql语句请都这么想象)   T2: upda
40 0
数据库事务的四大特性以及事务的隔离级别
数据库事务的四大特性以及事务的隔离级别http://www.bieryun.com/3118.html 本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。
1358 0
数据库事务的四大特性以及事务的隔离级别
数据库事务的四大特性以及事务的隔离级别 本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity) 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客介绍事务的功能是一样的概念,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。
1344 0
数据库的四大特性以及事务的隔离级别
什么是事务   什么是事务?     当多个操作有这样的要求时:要么都成功要么都失败,这说明这多个操作必须在一个事务中,事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。
716 0
数据库事务ACID
数据库事务 数据库事务有严格的定义,它必须同时满足4个特性:原子性(Atomic)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),简称ACID。
970 0
Java历程-初学篇 Day02变量,数据类型和运算符
一,数据类型 1,基础数据类型   整型   byte   short   int   long   浮点型   float   double   字符型   char   布尔类型   boolean 2,引用类型   String   字符串型 二,变量 1,...
708 0
+关注
云栖-lxl
java程序员
文章
问答
文章排行榜
最热
最新
相关电子书
更多
基于HLC的分布式事务实现深度剖析
立即下载
PostgreSQL高并发数据库应用数据
立即下载
事务、全局索引、透明分布式
立即下载