`
月亮不懂夜的黑
  • 浏览: 155462 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

事务及其特性

 
阅读更多
事务是单个逻辑工作单元,要么全部做完,要么全部不做,事务由两种状态,一个提交一个回滚。
事务由四个特性ACID,原子性、一致性、隔离性和永远性。

(1) 原子性 
  事务的原子性指的是,事务中包含的程序作为数据库的逻辑工作单位,它所做的对数据修改操作要么全部执行,要么完全不执行。这种特性称为原子性。 
  事务的原子性要求,如果把一个事务可看作是一个程序,它要么完整的被执行,要么完全不执行。就是说事务的操纵序列或者完全应用到数据库或者完全不影响数据库。这种特性称为原子性。 
假如用户在一个事务内完成了对数据库的更新,这时所有的更新对外部世界必须是可见的,或者完全没有更新。前者称事务已提交,后者称事务撤消(或流产)。DBMS必须确保由成功提交的事务完成的所有操纵在数据库内有完全的反映,而失败的事务对数据库完全没有影响。 

(2) 一致性 
事务的一致性指的是在一个事务执行之前和执行之后数据库都必须处于一致性状态。这种特性称为事务的一致性。假如数据库的状态满足所有的完整性约束,就说该数据库是一致的。 
  一致性处理数据库中对所有语义约束的保护。假如数据库的状态满足所有的完整性约束,就说该数据库是一致的。例如,当数据库处于一致性状态S1时,对数据库执行一个事务,在事务执行期间假定数据库的状态是不一致的,当事务执行结束时,数据库处在一致性状态S2。 

(3) 分离性 
  分离性指并发的事务是相互隔离的。即一个事务内部的操作及正在操作的数据必须封锁起来,不被其它企图进行修改的事务看到。 
分离性是DBMS针对并发事务间的冲突提供的安全保证。DBMS可以通过加锁在并发执行的事务间提供不同级别的分离。假如并发交叉执行的事务没有任何控制,操纵相同的共享对象的多个并发事务的执行可能引起异常情况。 
  DBMS可以在并发执行的事务间提供不同级别的分离。分离的级别和并发事务的吞吐量之间存在反比关系。较多事务的可分离性可能会带来较高的冲突和较多的事务流产。流产的事务要消耗资源,这些资源必须要重新被访问。因此,确保高分离级别的DBMS需要更多的开销。 

(4)持久性 
  持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失。即一旦一个事务提交,DBMS保证它对数据库中数据的改变应该是永久性的,耐得住任何系统故障。持久性通过数据库备份和恢复来保证。 
  持久性意味着当系统或介质发生故障时,确保已提交事务的更新不能丢失。即对已提交事务的更新能恢复。一旦一个事务被提交,DBMS必须保证提供适当的冗余,使其耐得住系统的故障。所以,持久性主要在于DBMS的恢复性能。

 

分享到:
评论

相关推荐

    精心为你准备的最全的20道Mysql面试题

    1. **MySQL事务及其特性** MySQL的事务是一个逻辑操作单元,它包含了一系列数据库操作,这些操作要么全部成功,要么全部失败,这是事务的原子性(Atomicity)体现。原子性确保了数据不会处于不一致状态。 - **...

    事务及其并发控制实验1

    事务及其并发控制实验1 在数据库系统中,事务(Transaction)是一种机制,用于确保数据库的一致性和可靠性。事务控制是指控制事务执行的过程,以确保事务的正确执行和回退。下面是事务及其并发控制实验1的知识点...

    信息化综合资料.pptx

    【数据库保护】是信息化综合资料中的重要组成部分,主要包括概述、安全保护、完整性保护、事务及其特性以及并发控制技术和数据库恢复技术。本章首先强调了数据库保护的必要性,特别是对于共享数据的管理,确保数据的...

    mysql——事务

    MySQL中的事务是数据库管理系统执行操作的基本单位,它确保了数据操作的完整性和一致性。事务有四大特性,即原子性(Atomicity)、一致性(Consistency)...理解和掌握事务及其特性对于数据库设计和应用开发至关重要。

    SQL Server重温 事务

    总结来说,事务是SQL Server中保障数据完整性和一致性的关键机制,理解并熟练运用事务及其特性对于数据库管理和开发至关重要。正确使用事务可以有效地防止数据损坏,提高系统的可靠性和稳定性。

    SpringBoot事务和Spring事务详讲

    本文将详细介绍 Spring 和 Spring Boot 中事务的使用方法及其注意事项。 #### 二、事务的基本概念 在讨论 Spring 事务之前,我们先从日常生活中的一个常见场景——取钱说起。当你从 ATM 机上取款时,这一过程可以...

    Spring事务管理Demo

    在Spring框架中,事务管理是核心特性之一,它允许开发者以声明式或编程式的方式处理应用中的事务。Spring事务管理的目的是确保数据的一致性和完整性,尤其是在多操作、多资源的环境中。本Demo将深入探讨Spring如何...

    Caché数据库及其特性.pdf

    ### Caché数据库及其特性详解 #### 一、Caché数据库概述 Caché数据库是一款高性能的对象数据库系统,由InterSystems公司开发。它在医疗健康行业以及其他对数据处理速度和可靠性有极高要求的领域中得到了广泛...

    分布式事务若依框架文档

    在理解分布式事务之前,我们首先需要了解数据库事务的基本属性,即ACID特性。 - **原子性(Atomicity)**:事务中的所有操作要么全部成功,要么全部失败。如果其中任何一部分失败,则整个事务都会被撤销,并且回滚...

    java事务 - 传递Connection

    在实际应用中,为了代码的可维护性和复用性,我们可以将这些步骤封装到一个事务管理类或使用Spring框架的`PlatformTransactionManager`接口及其实现类,如`DataSourceTransactionManager`。Spring框架提供了更高级别...

    SQL Server事务基本使用方法

    理解和掌握事务的基本使用方法及其潜在的并发问题,对于开发高质量、高可靠性的数据库应用程序至关重要。通过合理设置事务的隔离级别和正确使用事务控制语句,可以有效地避免常见的并发问题,提高系统的稳定性和性能...

    spring 事务传播与隔离级别DEMO

    在Spring框架中,事务管理是核心特性之一,它允许开发者以声明式或编程式的方式处理事务。本DEMO主要探讨的是Spring事务的传播行为和隔离级别,这些概念对于理解和优化数据库操作至关重要。让我们深入理解这些概念...

    EJB的事务属性

    在深入探讨EJB(Enterprise JavaBeans)的事务属性之前,我们先来理解一下EJB的基本概念及其在企业级应用中的重要性。EJB是Java EE平台的核心组件之一,主要用于构建可扩展、健壮且安全的企业级应用程序。它提供了一...

    数据库事务应用

    ### 数据库事务应用详解 #### 事务处理的重要性与ACID特性 事务处理是现代数据库管理系统(DBMS)中不可或缺的一...理解事务处理的基础原理及其在不同场景下的应用,对于开发出健壮、高效的数据库应用程序至关重要。

    会计师事务所作业组织设计及其管理.pptx

    总结来说,会计师事务所的作业组织设计及其管理需要综合考虑智力密集型服务行业的特性、项目管理理论、组织结构的灵活性和效率,以及内外部环境变化的影响,以构建一个既能满足客户需求又能实现战略目标的高效组织...

Global site tag (gtag.js) - Google Analytics