事务基础

事务,一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。

事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。

事务是恢复和并发控制的基本单位。

事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。

原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。

一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。

隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。

持久性(durability)。持久性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

时间: 2024-07-30 22:36:24

事务基础的相关文章

学习Spring必学的Java基础知识(7)----事务基础知识

引述要学习Spring框架的技术内幕,必须事先掌握一些基本的Java知识,正所谓“登高必自卑,涉远必自迩”.以下几项Java知识和Spring框架息息相关,不可不学(我将通过一个系列分别介绍这些Java基础知识,希望对大家有所帮助.): [1] Java反射知识-->Spring IoC :http://www.iteye.com/topic/1123081 [2] Java动态代理-->Spring AOP :http://www.iteye.com/topic/1123293 [3] 属性

[Java]Spring数据库事务基础知识

Spring虽然提供了灵活方便的事务管理功能,但这些功能都是基于底层数据库本身的事务处理机制工作的.要深入了解Spring的事务管理和配置,有必要先对数据库事务的基础知识进行学习. 何为数据库事务 "一荣俱荣,一损俱损"这句话很能体现事务的思想,很多复杂的事物要分步进行,但它们组成一个整体,要么整体生效,要么整体失效.这种思想反映到数据库上,就是多个SQL语句,要么所有执行成功,要么所有执行失败. 数据库事务有严格的定义,它必须同时满足 4 个特性:原子性(Atomic).一致性(Co

事务基础知识-->Spring事务管理

Spring虽然提供了灵活方便的事务管理功能,但这些功能都是基于底层数据库本身的事务处理机制工作的.要深入了解Spring的事务管理和配置,有必要先对数据库事务的基础知识进行学习. 何为数据库事务 “一荣俱荣,一损俱损”这句话很能体现事务的思想,很多复杂的事物要分步进行,但它们组成一个整体,要么整体生效,要么整体失效.这种思想反映到数据库上,就是多个SQL语句,要么所有执行成功,要么所有执行失败. 数据库事务有严格的定义,它必须同时满足 4 个特性:原子性(Atomic).一致性(Consist

数据库事务基础

一.概述 1.事务概念 在数据库中,事务是指一组逻辑工作单元执行的一系列动作,要么都执行,要么都不执行. 2.事务ACID特性 原子性(Atomic) 原子性是指组成一个事务的多个数据库操作是一个不可分割的原子单元,事务中的操作要么都发生,要么都不发生. 一致性(Consistency) 事务必须使数据库从一个一致性状态变换到另外一个一致性状态 (数据不被破坏) .如从A账户转账100元到B账户,不管操作成功与否,A和B的存款总额是不变的. 隔离性(Isolation) 在并发数据操作时,不同的

分布式事务—基础篇

1.基础概念 1.1.什么是事务 什么是事务?举个生活中的例子:你去小卖铺买东西,“一手交钱,一手交货”就是一个事务的例子,交钱和交货必须全部成功,事务才算成功,任一个活动失败,事务将撤销所有已成功的活动. 明白上述例子,再来看事务的定义: 事务可以看做是一次大的活动,它由不同的小活动组成,这些活动要么全部成功,要么全部失败. 1.2.本地事务 在计算机系统中,更多的是通过关系型数据库来控制事务,这是利用数据库本身的事务特性来实现的,因此叫数据库事务,由于应用主要靠关系数据库来控制事务,而数据库

【持久层】数据库事务基础——事务的隔离级别

内容导读: 前三节数据库事务.并发带来的风险以及数据库锁都是为了铺垫事务的隔离性. 事务的隔离性不是无缘无故就存在的,他的存在是为了解决某一类问题,带来某一些操作的便捷:解决的问题是指数据库并发操作中数据一致性保证,带来的便捷是指定义好隔离级别之后,数据库会为操作自动加锁(不同的隔离级别拥有不同的自动锁粒度),而不用每次操作都手动的加锁. 写着写着觉得没什么可写的,本文已沦为简单的笔记···· 一.数据库事务 将一组数据库操作看作一个具备特殊数据库语义的执行单元,该执行单元具备ACID的事务属性

数据库事务基础知识

数据库事务的四个特性 原子性(Atomic).一致性(Consistency).隔离性(Isolation).持久性(Durabiliy),简称 ACID 数据并发的问题 脏读.不可重复读.幻象读.第一类丢失更新.第二类丢失更新 脏读: 事务 A 读取了事务 B 未提及的数据 不可重复读: 事务 A 读取了事务 B 已提交的数据(主要是修改) 幻象读:事务 A 读取了事务 B 已提交的数据(主要是新增) 第一类丢失更新:事务 A 撤销时将事务 B 已经提交的数据一并撤销 第二类丢失更新: 事务

Spring的事务管理基础知识

1.数据库事务基础知识 1)数据库事务有严格的定义,它必须同时满足4个特性:原子性(Atomic).一致性(Consistency).隔离性(Isolation)和持久性(Durability),简称ACID. 2)数据并发的问题:脏读.不可重复读.幻想读.第一类丢失更新.第二类丢失更新. 3)数据库锁机制: 按锁定的对象的不同:一般可以分别表锁定和行锁定,前者对整个表进行锁定,而后者对表中特定行进行锁定.从并发事务锁定的关系上看,可以分为共享锁定和独占锁定.共享锁定会防止独占锁定,但允许其他的

MySQL基础篇(06):事务管理,锁机制案例详解

本文源码:GitHub·点这里 || GitEE·点这里 一.锁概念简介 1.基础描述 锁机制核心功能是用来协调多个会话中多线程并发访问相同资源时,资源的占用问题.锁机制是一个非常大的模块,贯彻MySQL的几大核心难点模块:索引,锁机制,事务.这里是基于MySQL5.6演示的几种典型场景,对面MySQL这几块问题时,有分析流程和思路是比较关键的.在MySQL中常见这些锁概念:共享读锁.排它写锁 ; 表锁.行锁.间隙锁. 2.存储引擎和锁 MyISAM引擎:基于读写两种模式,支持表级锁 ; Inn