Chapter 5 Transaction Management 事务管理
1 Chapter 5 Transaction Management 事务管理
●事务是DBMS中的执行单位,事务应满足ACID准 系统正常时应满足ACID, 发生故障时也要满厅 ACID准则。 事务并发执行时也要满足ACID准则。 ●保证事务并发执行时满足ACID准则的技术叫 并发控制。 保证事务故障时满足ACID准则的技术叫恢复。 并发控制和恢复是保证事务正常执行的两项基本 技术,合称事务管理
2 ⚫ 事务是DBMS中的执行单位,事务应满足ACID准则。 ——系统正常时应满足ACID,发生故障时也要满足 ACID准则。 ——事务并发执行时也要满足ACID准则。 ⚫ 保证事务并发执行时满足ACID准则的技术叫 并发控制。 ⚫ 保证事务故障时满足ACID准则的技术叫恢复。 ⚫ 并发控制和恢复是保证事务正常执行的两项基本 技术,合称事务管理
5.01 Recovery Introduction 恢复引论
3 5.01 Recovery Introduction 恢复引论
系统的软、硬件故障,经常导致数据库的 失效。 。故障发生后,将数据库恢复为一致状态的 技术叫恢复(Recovery) ● 要恢复丢失的数据,数据的后备文本是必 需的。所以恢复是靠后备冗余实现的
4 ⚫ 系统的软、硬件故障,经常导致数据库的 失效。 ⚫ 故障发生后,将数据库恢复为一致状态的 技术叫恢复(Recovery) ⚫ 要恢复丢失的数据,数据的后备文本是必 需的。所以恢复是靠后备冗余实现的
1.Recovery Based dumping and incremental dumping 基于转储和增量转储的恢复 (dump-l临时集处,转储) 是从文件系统继承来的,即周期把磁盘上 的数据转储到磁带。脱机存储,不受系 统故障的影响。 转储到磁带上的数据复本叫后备复本, reserve dupl icate
5 1.Recovery Based dumping and incremental dumping 基于转储和增量转储的恢复 (dump-临时集处,转储) 是从文件系统继承来的,即周期把磁盘上 的数据转储到磁带。脱机存储,不受系 统故障的影响。 转储到磁带上的数据复本叫后备复本, reserve duplicate
问题: 取后备复本,数据的状态必须冻结。数据库数 据量大,取一次后备复本时间花费大。所以, 取复本不能太频繁。 数据库失效时,只能取最近的复本恢复数据库, 故只能恢复到最近的后备复本的一致状态,从 最近复本至故障时的期间内所有对数据库更新 将丢失。 取后备的隔周期愈长,这种更新丢失越多
6 问题: ⚫ 取后备复本,数据的状态必须冻结。数据库数 据量大,取一次后备复本时间花费大。 所以, 取复本不能太频繁。 ⚫ 数据库失效时,只能取最近的复本恢复数据库, 故只能恢复到最近的后备复本的一致状态,从 最近复本至故障时的期间内所有对数据库更新 将丢失。 ⚫ 取后备的隔周期愈长,这种更新丢失越多
incremental dumping 1(D) ● 数据库更新数据,一般仅更新局部数据,很 少全部更新。 只对修改过的物理块进行转储,则转储时间 花费不大。故转储对数据库工作的影响也小。 这种转储叫增量转储(1D)。 在取后备复本后,可每天进行一次丨D 故障后,先用后备复本恢复,再用1D逐天 恢复至最近的一致状态。 最多丢失一天的更新数据
7 incremental dumping(ID) ⚫ 数据库更新数据,一般仅更新局部数据,很 少全部更新。 ⚫ 只对修改过的物理块进行转储,则转储时间 花费不大。故转储对数据库工作的影响也小。 这种转储叫增量转储(ID)。 ⚫ 在取后备复本后,可每天进行一次ID ⚫ 故障后,先用后备复本恢复,再用ID逐天 恢复至最近的一致状态。 ⚫ 最多丢失一天的更新数据
2.recovery based reserve dupl icate and journal (log) 以后备复本和运行记录为基础的恢复。 运行记录是供恢复用的对数据库运行情况的记录。 主要包括下述内容: (1)before image(Bl)前像 数据库被一个事务更新时,涉及的物理块,更新 前的映象,叫该事务的前像。 ● 前像以物理块为单位,按事务记载,注意是事务 的前像。 前像可使数据恢复到更新前的状态,即撤消更新 称撤逍(undo)
8 2.recovery based reserve duplicate and journal(log) 以后备复本和运行记录为基础的恢复。 运行记录是供恢复用的对数据库运行情况的记录。 主要包括下述内容: (1)before image(BI)前像 ⚫ 数据库被一个事务更新时,涉及的物理块,更新 前的映象,叫该事务的前像。 ⚫ 前像以物理块为单位,按事务记载,注意是事务 的前像。 ⚫ 前像可使数据恢复到更新前的状态,即撤消更新, 称撤消(undo)
(2)after image (AI) 后像。 数据库被一个事务更新时,涉及的物理块被更 新后的映像,叫该事务的后像。 。后像也以物理块为单位,按事务记载。 后像是更新数据丢失后,使数据库恢复到更新 后的状态,亦称向前恢复,相当于把事务一个 一个地按次序重做一次,又称重做(redo)
9 (2)after image(AI) 后像。 ⚫ 数据库被一个事务更新时,涉及的物理块被更 新后的映像,叫该事务的后像。 ⚫ 后像也以物理块为单位,按事务记载。 ⚫ 后像是更新数据丢失后,使数据库恢复到更新 后的状态,亦称向前恢复,相当于把事务一个 一个地按次序重做一次,又称重做(redo)
(3)事务状态记录(transaction state) a)每个事务从提交DBMS到结束为止,可能 经历的状态变迁如下图: 事务开始 活动状态 操作结束 事务提交 事务失败 卷回 结束 10
10 (3)事务状态记录(transaction state) a)每个事务从提交DBMS到结束为止,可能 经历的状态变迁如下图: 事务开始 活动状态 操作结束 事务提交 结束 事务失败 卷回