`

数据库事物的ACID特性

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



       原子性:指整个数据库事务是不可分割的工作单位。只有使据库中所有的操作执行成功,才算整个事务成功;事务中任何一个SQL语句执行失败,那么已经执行成功的SQL语句也必须撤销,数据库状态应该退回到执行事务前的状态。

      一致性:指数据库事务不能破坏关系数据的完成性以及业务逻辑上的一致性。例如对银行转帐事务,不管事务成功还是失败,应该保证事务结束后ACCOUNTS表中Tom和Jack的存款总额为2000元。

      隔离性:指的是在并发环境中,当不同的事务同时操纵相同的数据时,每个事务都有各自的完整数据空间。

      持久性:指的是只要事务成功结束,它对数据库所做的更新就必须永久保存下来。即使发生系统崩溃,重新启动数据库系统后,数据库还能恢复到事务成功结束时的状态。
     事务的(ACID)特性是由关系数据库管理系统(RDBMS,数据库系统)来实现的。数据库管理系统采用日志来保证事务的原子性、一致性和持久性。日志记录了事务对数据库所做的更新,如果某个事务在执行过程中发生错误,就可以根据日志,撤销事务对数据库已做的更新,使数据库退回到执行事务前的初始状态。


      数据库管理系统采用锁机制来实现事务的隔离性。当多个事务同时更新数据库中相同的数据时,只允许持有锁的事务能更新该数据,其他事务必须等待,直到前一个事务释放了锁,其他事务才有机会更新该数据。



分享到:
评论

相关推荐

    【面试高频!】数据库事务/事务的作用/数据库事务ACID属性 / 特性/事务的隔离性/数据库事务隔离级别/ 数据库的隔离级别导致问题/数据库事务的使用/mysql的事务死锁/ 快速解决mysql死锁问

    数据库事务ACID属性 / 特性 原子性(Atomicity):要么全部完成,要么全部不完成。 一致性(Consistency):事务必须始终保持系统处于一致性。 隔离性(Isolation):隔离执行事务,使它们好像是系统在给定时间内执行的...

    数据库事物

    数据库事物 1.事物的四大特性(ACID) 原子性:事物是最小的执行单位,不允许分割,事物的原子性确保动作要么全部完成,要么完全不起作用。 一致性:执行事物前后,数据保持一致,多个事物对同一个数据读取的结果是...

    数据库恢复技术.doc

    这4 个特性也简称为ACID 特性。 原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。 一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。 隔离性:一个事务的...

    Java面试题mysql数据库和jvm知识面试题用于技能提升和面试提升

    七、事物与数据库底层数据 10 八、在MySQL中,事务提交与回滚 10 九、事务四大特性之一隔离性(isolation) 11 十、隔离级别与一致性关系 12 十一、设置事务隔离级别 12 十二、隔离级别的作用范围 12 十三、查看隔离...

    数据库设计三大范式.pdf

    事务ACID属性 事务处理的特性,每⼀个事务都有他们所共有的特性,叫做ACID特性,分别是原⼦性atomicity,⼀致性consistency、隔离性 Isolation,持久性Durability。 1. 原⼦性,事务的原⼦性表⽰事务执⾏过程中,把...

    sqlite3数据库归纳

    sqlite3数据库是关系型数据库,体积小,支持ACID事物。  (ACID,指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。一...

    KitDB内嵌式NoSQL数据库 v0.2.6

    也提供了TTL(生存时间)、备份、ACID事物,多节点强一致性等功能。 KitDB完全基于磁盘存储,并提供最高百万级别的查询性能和十万的写入性能。KitDB内嵌式NoSQL数据库特性1、完全基于磁盘,不受内存限制 2、KV、...

    KitDB内嵌式NoSQL数据库

    也提供了TTL(生存时间)、备份、ACID事物,多节点强一致性等功能。KitDB完全基于磁盘存储,并提供最高百万级别的查询性能和十万的写入性能。KitDB特性:1、完全基于磁盘,不受内存限制2、KV、List、Map、Zet、ZSET...

    MySQL事务隔离

    事务(Transaction)是由一系列对系统中数据进行访问与更新的操作所组成的一个程序执行逻辑单元。...ACID特性 数据库事务拥有以下4大特性: 原子性(Atomicity)、一致性(Consistency)、隔离性(Isolat

    KitDB内嵌式NoSQL数据库-其他

    也提供了TTL(生存时间)、备份、ACID事物,多节点强一致性等功能。 KitDB完全基于磁盘存储,并提供最高百万级别的查询性能和十万的写入性能。 KitDB特性: 1、完全基于磁盘,不受内存限制 2、KV、List、Map、Zet、...

    mybatis事务

    什么是事务(Transaction)? 事务是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如...事务的四大特性ACID 1、原子性(Atomicity) 事务是一个不可分割的单位

    高频大数据解决方案.pptx

    关键特性: 基于网络的数据库集群复制 10 VoltDB包括一个网络复制Agent 这个Agent将事物异步从主集群(可读可写)复制到备集群(只读) 异步的方式最大限度容忍网络可能出现的问题 高频大数据解决方案全文共28页,...

    java面试题,180多页,绝对良心制作,欢迎点评,涵盖各种知识点,排版优美,阅读舒心

    事务的四个特性:ACID 101 4种隔离级别 102 脏读、不可重复读、幻读 105 【数据库】索引的结构有哪些? 107 【数据库】乐观锁与悲观锁的区别 107 【数据库】数据库的三范式 107 【数据库】inner/left/right/full ...

    MySQLDBA运维笔记.pdf

    1.1 数据库的种类...........................................................................................................6 1.1.1 关系型数据库介绍........................................................

Global site tag (gtag.js) - Google Analytics