1、数据库系统概论An Introduction to Database System第十章 数据库恢复技术An Introduction to Database System第十章 数据库恢复技术10.1 事务的基本概念10.2 数据库恢复概述10.3 故障的种类10.4 恢复的实现技术10.5 恢复策略10.6 具有检查点的恢复技术10.7 数据库镜像10.8 小结An Introduction to Database System10.1 事务的基本概念一、事务定义二、事务的特性An Introduction to Database System一、事务 (Transaction)v定义 一
2、个数据库操作序列 一个不可分割的工作单位 恢复和并发控制的基本单位v事务和程序比较 在关系数据库中,一个事务可以是一条或多条 SQL语句 ,也可以包含一个或多个程序。 一个程序通常包含多个事务An Introduction to Database System定义事务v显式定义方式BEGIN TRANSACTION BEGIN TRANSACTIONSQL 语句 1 SQL 语句 1SQL 语句 2 SQL 语句 2。 。COMMIT ROLLBACKv隐式方式当用户没有显式地定义事务时,DBMS按缺省规定自动划分事务An Introduction to Database System事务结束
3、COMMIT事务正常结束 提交 事务的所有操作( 读 +更新 )事务中所有对数据库的更新 永久 生效ROLLBACK事务异常终止 事务运行的过程中发生了故障,不能继续执行回滚事务的所有 更新 操作 事务滚回到 开始 时的状态An Introduction to Database System二、事务的特性 (ACID特性 )事务的 ACID特性:v原子性( Atomicity)v一致性( Consistency)v隔离性( Isolation)v持续性( Durability )An Introduction to Database System1. 原子性v事务是数据库的逻辑工作单位 事务中
4、包括的诸操作要么都做,要么都不做An Introduction to Database System2. 一致性事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态一致性状态 :数据库中只包含成功事务提交的结果不一致状态 :数据库中包含失败事务的结果An Introduction to Database System一 致性与原子性银行转帐:从帐号 A中取出一万元,存入帐号 B。 定义一个事务,该事务包括两个操作 这两个操作要么全做,要么全不做 全做或者全不做,数据库都处于一致性状态。 如果只做一个操作,数据库就处于不一致性状态 。B=B+1 A=A-1BAAn Introduction to Database System