一致性与原子性银行转帐:从帐号A中取出一万元,存入帐号B。■定义一个事务,该事务包括两个操作BAA=A-1B=B+1■这两个操作要么全做,要么全不做全做或者全不做,数据库都处于一致性状态。·如果只做一个操作,用户逻辑上就会发生错误,少了一万元,数据库就处于不一致性状态。AnIntroduction toDatabase System
An Introduction to Database System 一致性与原子性 银行转帐:从帐号A中取出一万元,存入帐号B。 ◼ 定义一个事务,该事务包括两个操作 ◼ 这两个操作要么全做,要么全不做 ⚫全做或者全不做,数据库都处于一致性状态。 ⚫如果只做一个操作,用户逻辑上就会发生错误,少了一 万元,数据库就处于不一致性状态。 B=B+1 A=A-1 A B
(3)阝隔离性一个事务的执行不能被其他事务干扰一个事务内部的操作及使用的数据对其他并发事务是隔离的1并发执行的各个事务之间不能互相干扰猪车AnIntroductiontoDatabaseSystem
An Introduction to Database System (3)隔离性 一个事务的执行不能被其他事务干扰 ◼ 一个事务内部的操作及使用的数据对其他并发事务是 隔离的 ◼ 并发执行的各个事务之间不能互相干扰
(4)持续性持续性也称永久性(Permanence)一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。O数据库系统AnIntroductiontoDatabaseSystem
An Introduction to Database System (4)持续性 ❖持续性也称永久性(Permanence) ◼ 一个事务一旦提交,它对数据库中数据的改变就应该 是永久性的。 ◼ 接下来的其他操作或故障不应该对其执行结果有任何 影响
事务的特性心保证事务ACID特性是事务处理的任务破坏事务ACID特性的因素(1)多个事务并行运行时,不同事务的操作交又执行·数据库管理系统必须保证多个事务的交又运行不影响这些事务的隔离性(2)事务在运行过程中被强行停止·数据库管理系统必须保证被强行终止的事务对数据库和其他事务没有任何影响An Introduction to Database System
An Introduction to Database System 事务的特性 ❖保证事务ACID特性是事务处理的任务 ❖破坏事务ACID特性的因素 (1) 多个事务并行运行时,不同事务的操作交叉执行 ⚫数据库管理系统必须保证多个事务的交叉运行不影响这 些事务的隔离性 (2)事务在运行过程中被强行停止 ⚫数据库管理系统必须保证被强行终止的事务对数据库和 其他事务没有任何影响
第十章数据库恢复技术10.11事务的基本概念10.2数据库恢复概述10.3故障的种类10.4恢复的实现技术统概论10.55恢复策略10.6具有检查点的恢复技术数据库镜像10.7小结10.8AnIntroduction toDatabaseSystem
An Introduction to Database System 第十章 数据库恢复技术 10.1 事务的基本概念 10.2 数据库恢复概述 10.3 故障的种类 10.4 恢复的实现技术 10.5 恢复策略 10.6 具有检查点的恢复技术 10.7 数据库镜像 10.8 小结