试题详情
简答题怎样进行系统故障的恢复?
  • 当系统故障发生时,造成数据库处于不一致状态的原因有两个,一个是一些未完成事务对数据库的部分更新已写入数据库中,另一个是一些已提交事务对数据库的更新还留在内存缓冲区,没来得及写回数据库。因此,基本的恢复分为以下两步:
    (1)根据日志文件建立重做队列和撤消队列从头扫描日志文件,找出故障前已提交的事务记录,将其事务标识放入重做队列;还要找出故障前尚未完成的事务,将该事务放入撤消队列。
    (2)对重做队列中的事务进行重做处理,对撤消队列中的事务进行撤消处理对于重做处理(REDO),正向扫描日志文件,再根据重做队列,将已完成的事务的所有操作重新执行;对于撤消处理(UNDO),反向扫描日志文件,再根据撤消队列,将未完成的事务的更新操作执行逆操作。
  • 关注下方微信公众号,在线模考后查看

热门试题