文档介绍:An Introduction to Database System
数据库系统概论
An Introduction to Database System
第十章数据库恢复技术
An Introduction to Database System
第十章数据库恢复技术
事务的基本概念
数据库恢复概述
故障的种类
恢复的实现技术
恢复策略
具有检查点的恢复技术
数据库镜像
小结
An Introduction to Database System
事务的基本概念
一、事务定义
二、事务的特性
事务的基本概念
有时,某个工作的完成要分成若干步骤,只有所有步骤都成功做完,该项工作才完成;
否则,其中任一步失败,该工作亦失败。针对此类工作特点,引入“事务”概念,在DBMS中,定义此类工作为事务,并保证其执行特点。
An Introduction to Database System
An Introduction to Database System
一、事务(Transaction)
定义
一个数据库操作序列
一个不可分割的工作单位
恢复和并发控制的基本单位
事务和程序比较
在关系数据库中,一个事务可以是一条或多条SQL语句,也可以包含一个或多个程序。
一个程序通常包含多个事务
An Introduction to Database System
定义事务
显式定义方式
BEGIN TRANSACTION BEGIN TRANSACTION
SQL 语句1 SQL 语句1
SQL 语句2 SQL 语句2
。。。。。。。。。。
COMMIT ROLLBACK
隐式方式
当用户没有显式地定义事务时,
DBMS按缺省规定自动划分事务
事务结束
COMMIT
事务正常结束
提交事务的所有操作(读+更新)
事务中所有对数据库的更新永久生效
ROLLBACK
事务异常终止
事务运行的过程中发生了故障,不能继续执行
回滚事务的所有更新操作
事务滚回到开始时的状态
An Introduction to Database System
An Introduction to Database System
二、事务的特性(ACID特性)
事务的ACID特性:
原子性(Atomicity)
一致性(Consistency)
隔离性(Isolation)
持续性(Durability )
An Introduction to Database System
1)原子性
事务是数据库的逻辑工作单位
事务中包括的诸操作要么都做,要么都不做
2) 一致性
事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态
一致性状态:数据库中只包含成功事务提交的结果
不一致状态:数据库中包含失败事务的结果
1)原子性
事务特性
事务特性
An Introduction to Database System
3)隔离性
一个事务的执行不能被其他事务干扰
一个事务内部的操作及使用的数据对其他并发事务是隔离的
并发执行的各个事务之间不能互相干扰
4)持续性
持续性也称永久性(Permanence)
一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。
接下来的其他操作或故障不应该对其执行结果有任何影响。
3)隔离性