假设从先前的崩溃中恢复时,数据库系统再次崩溃。假定在事务期间或恢复期间数据库不执行检查点。
下列哪个陈述是正确的?
(A)再次恢复时将使用相同的撤消和重做列表
(B)系统无法再恢复
(C)所有已撤消并重做的交易将不会再次恢复
(D)数据库将变得不一致答案: (A)
说明:假定撤消/重做列表是持久性的(日志记录),而撤消/重做系统会记录所做的所有更改。因此,如果系统在恢复过程中崩溃,那么下一次恢复将使数据库进入一致状态
如果在事务期间或恢复期间数据库没有执行检查点操作,则使用日志记录来恢复系统:发生系统崩溃后,系统将查阅日志以确定哪些事务需要重做,哪些事务需要撤消。
- 如果日志包含记录,则需要撤消事务Ti
但不包含任何记录 或记录 。 - 如果日志包含记录,则需要重做事务Ti
还有记录 或记录 。 - 如果日志包含记录,则需要重做事务Ti
这个问题的测验