事务故障:

    • 事务在运行过程中由于种种原因,如输入数据的错误、运算溢出、违反了某些完整性限制、某些应用程序的错误以及并发事务发生死锁等,使事务未运行至正常终止点就寄了,这种情况称为事务故障。
    • 特征:系统的软件和硬件都能正常运行,数据库缓冲区和磁盘上的数据都未丢失和破坏。
    • 恢复策略:强行回滚(rollback)夭折事务,清除其对数据库的所有修改,使得该事务好象根本没有启动过一样,称这类恢复操作称为事务撤销(UNDO)

    系统故障:

    • 该类故障是指系统在运行过程中,由于某种原因,如操作系统或DBMS代码错误、操作员操作失误、特定类型的硬件错误(如CPU故障)、突然停电等造成系统停止运行,致使所有正在运行的事务都以非正常方式终止。
    • 特征:数据库缓冲区的信息全部丢失,但磁盘上的数据未被破坏。
    • 恢复策略
      • 撤销(UNDO)所有未完成事务——原子性的要求
      • 重做(REDO)所有已提交的事务——持久性的要求

    介质故障

    • 该类故障是指系统在运行过程中,由于某种硬件故障,如磁盘损坏、磁头碰撞,或操作系统的某种潜在错误,瞬时强磁场干扰等,致使存储在外存中的数据部分丢失或全部丢失。这类故障比前两类故障的可能性小得多,但破坏了磁盘上的数据,危害性最大。
    • 特征:存储在外部存储设备(磁盘)上的数据被破坏。
    • 恢复策略:需要装入发生介质故障前某个时刻的数据库数据副本,并重做(REDO)自备份相应副本数据库之后的所有成功事务,将这些事务已提交的更新结果重新反映到数据库中去。无需撤销(UNDO)操作

    其它故障

    • 黑客入侵、病毒、恶意流氓软件等引起的事务异常结束、篡改数据等不一致性。
    • 特征:恶意破环。
    • 恢复策略:通过数据库的安全机制、审计机制等实现对数据的授权访问和保护。