1. 简述使用检查点方法进行数据恢复的一般步骤。
答:
(1)使用检查点方法进行数据恢复,首先从重新开始文件(见P302页图10.3)中找到最后一个检查点记录在日志文件中的地址,由该地址在日志文件中找到最后一个检查点记录。
(2)由该检查点记录得到检查点建立时刻所有正在执行的事务清单ACTIVE-LIST。
这里建立两个事务队列:
①UNDO-LIST:需要执行UNDO操作的事务集合;
②REDO-LIST:需要执行REDO操作的事务集合。
把ACTIVE一LIST暂时放入UNDO一LIST队列,REDO队列暂为空。
(3)从检查点开始正向扫描日志文件:
①如有新开始的事务Ti,把Ti暂时放入UNDO-LlST队列;
②如有提交的事务Tj,把Tj从UNDO-LIST队列移到REDO-LIST队列,直到日志文件结束;
- 对UNDO-LIST中的每个事务执行UNDO操作,对REDO-LIST中的每个事务执行REDO操作。
- 教材P305页第4题
答:
(1)重做:T1、T3;回滚:T2、T4;
(2)重做:T1;回滚:T2、T3;
(3)重做:T1;回滚:T2、T3;
(4)重做:T1;回滚:T2。
- 教材P305页第5题
答:
- A=8,B=7,C=11;
(2)A=10,B=0,C=11;
(3)A=10,B=0,C=11;
(4)A=10,B=0,C=11;
(5)A=10,B=0,C=11;
(6)A=0,B=0,C=0。