`

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

 
阅读更多

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



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

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

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

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




事务的(ACID)特性是由关系数据库管理系统(RDBMS,数据库系统)来实现的。数据库管理系统采用日志来保证事务的原子性、一致性和持久性。日志记
录了事务对数据库所做的更新,如果某个事务在执行过程中发生错误,就可以根据日志,撤销事务对数据库已做的更新,使数据库退回到执行事务前的初始状态。



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

分享到:
评论

相关推荐

    基于Java DIY构建ACID特性的简易数据库设计源码

    ACID特性是衡量一个数据库事务处理能力的重要指标,其含义包括原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。原子性保证了事务中的所有操作要么全部完成,要么全部不...

    Python数据库事务管理:深入指南与代码实践

    Python数据库事务管理是一个涉及多种技术和操作细节的领域,它要求开发者具备ACID特性的理解,以及熟练掌握各种数据库操作库的使用。合理地应用事务提交和回滚操作,以及正确的异常处理,能够极大地提升应用的稳定性...

    java模拟数据库事务

    此外,事务的ACID特性(原子性、一致性、隔离性和持久性)是必须遵循的原则,这要求在Java代码中实现相应的逻辑保证。 综上所述,Java模拟数据库事务是一个综合性的任务,涵盖了网络通信、并发控制、设计模式等多个...

    数据库事务与隔离级别.docx

    事务必须具备四大特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),简称ACID。 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,这和前面两篇博客...

    linux运维学习笔记:MySQL数据库事务和引擎知识.pdf

    MySQL事务具备ACID四个基本特性,即原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。 1. 原子性意味着事务中包含的操作要么全部完成,要么全部不做。比如一个转账事务,...

    【Java数据库技术】索引类型与事务特性详解:提升SQL查询性能与数据一致性管理

    此外,文章还对比了InnoDB和MyISAM两种存储引擎的特点,解释了脏读、不可重复读、可重复读和幻读的概念,并讨论了SQL优化的方法以及数据库事务的ACID特性。 适合人群:具备一定数据库基础知识的开发者、数据库管理员...

    软考系分之数据库事务并发与事务加锁

    事务具备四个关键特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)以及持久性(Durability),通常被称为ACID特性。 1. **原子性**:指事务内的所有操作要么全部完成,要么一个也不执行。...

    数据库事务

    事务具备ACID特性: - **原子性**(Atomicity):事务中的所有操作要么全部成功,要么全部失败,不能部分执行。 - **一致性**(Consistency):事务的执行使得数据库从一种一致状态转换到另一种一致状态。 - **隔离...

    Spring事务的传播特性和隔离级别

    事务具备四个核心特性,通常被称为ACID特性: 1. **原子性(Atomicity)**:事务中的所有操作被视为一个不可分割的整体,要么全部成功执行,要么全部失败并回滚。这意味着事务中的每个操作都必须成功,否则整个事务...

    分布式事务数据库系统评估体系.pdf

    事务数据库属性指的是数据库核心数据逻辑管理模型具备事务处理能力,并符合完整的ACID(原子性、一致性、隔离性、持久性)特性。大规模在线交易处理能力是指数据库管理系统可以处理大量的在线事务处理负载。分布式...

    用友NC二次开发参考资料-Transaction数据库操作专题技术交流演示文档完美版资料.ppt

    本技术资料主要介绍了Transaction数据库操作的相关知识点,涵盖了Transaction的定义、ACID特性、Transaction环境、分类、数据库事务、检查点、系统故障恢复、数据库并发操作和隔离等级、数据库加锁机制和死锁分析等...

    Mysql事务的基本使用-基本原理及特点ACID

    事务具备四大特性,通常称为ACID特性,它们分别是: 1. **原子性(Atomicity)**:事务中的所有操作被视为一个不可分割的工作单元。这意味着事务中的所有操作要么全部成功,要么全部失败。如果事务中的某个操作失败...

    Oracle数据库的事务管理与故障恢复技术分析报告.doc

    在Oracle数据库中,事务是数据库操作的基本单位,通常具有ACID(原子性、一致性、隔离性和持久性)特性。原子性确保事务要么全部完成,要么全部不完成;一致性保证事务前后数据库处于逻辑一致的状态,符合预设的业务...

    实验9 数据库安全性与并发控制.doc

    事务是数据库中的一组操作,具备原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)四大特性。我们通过实验了解了事务的 ACID 特性,并学会了使用 commit 和 rollback 语句来...

    数据库_事务隔离级别与锁.docx

    事务通常具备以下四个特性,即ACID特性: 1. **原子性(Atomicity)**:事务被视为一个不可分割的工作单位,事务中的所有操作要么全部成功执行,要么全部失败回滚。这意味着事务不会部分执行。 2. **一致性...

    bd_数据库基础.pdf

    ### 数据库事务的ACID特性 数据库事务用于维护数据的完整性和一致性。事务应具备以下四个基本特性: 1. 原子性(Atomicity):事务中的所有操作要么全部完成,要么全部不完成,保证事务的不可分割性。 2. 一致性...

    数据库系统概念第六版答案

    事务是数据库操作的基本单元,具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)四大特性,简称ACID。例如,银行转账就是一个事务,必须保证要么两个账户都成功转账,...

    数据库第十章1

    【数据库恢复技术】是数据库管理中的关键组成部分,其主要目标是确保事务的ACID特性得以维护,即使在面对各种故障时也能保持数据的一致性和完整性。事务是数据库操作的基本逻辑单元,由一系列数据库操作组成,不可...

    分布式工程数据库系统中事务管理机制相关技术的研究

    分布式工程数据库系统(DEDBS)作为一种具备分布式数据管理能力且面向工程设计应用的数据库系统,在其核心部分,分布式事务管理扮演着至关重要的角色。事务管理子系统负责调度、管理在分布式数据库上运行的事务,...

    【Java面试准备】数据库并发控制与事务管理核心概念详解:封锁协议、死锁处理及SQL优化技巧

    内容概要:本文档详细介绍了Java面试中常见的数据库相关知识点,包括封锁协议、死锁与活锁的概念及解决方法、两段锁协议、GAP锁与next-key锁、LIMIT查询优化、drop/delete/truncate的区别、事务的ACID特性,以及超键...

Global site tag (gtag.js) - Google Analytics