开发者社区> 云栖-lxl> 正文

数据库事物四大特性-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保证它对数据库中数据的改变应该是永久性的,即对已提交事务的更新能恢复。持久性通过数据库备份和恢复来保证。

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

相关文章
数据库的事务四大特性&&隔离级别总结(面试高频)
数据库的事务四大特性&&隔离级别总结(面试高频)
27 0
事务的四大特性(ACID)| 学习笔记
快速学习事务的四大特性(ACID)。
32 0
软件测试mysql面试题:事物的四大特性(ACID)介绍一下?
软件测试mysql面试题:事物的四大特性(ACID)介绍一下?
48 0
事务的四大特性(ACID)|学习笔记
快速学习事务的四大特性(ACID)
30 0
事务的四大特性
事务的四大特性(原子性、一致性、隔离性、持久性)
44 0
【数据库】一个简单的事务模型(ACID)
一个简单的事务模型(ACID)
63 0
数据库面试题【一、事务四大特性】
数据库面试题【一、事务四大特性】
44 0
纯干货 | 一篇讲透如何理解数据库并发控制
作者:旺德,阿里云数据库高级开发工程师
1249 0
+关注
云栖-lxl
java程序员
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
《数据库:从趋势到实践》
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载