第八章 数据库恢复技术
事务的基本概念
事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位
事务的ACID特性
- 原子性
- 要么什么都做,要么什么都不做
- 一致性
- 事务的执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态
- 隔离性
- 一个事务的进行不能被其他事务干扰
- 持续性
- 一个事务的提交对数据库的改变是永久性的
故障的种类
- 事务内部的故障
- 事务内部故障多是非预期的,不能由应用程序处理的,如运算溢出,发生死锁
- 恢复策略:事务的撤销
- 系统故障
- 造成系统停止运转的任何事件,使得系统要重新启动
- 恢复策略:撤销未完成的事务,重做已完成的事务
- 介质故障
- 硬故障,如磁盘损坏
- 计算机病毒
数据库恢复的原理
冗余:数据库中任何一部分被破坏或不正确的数据可以根据存储在系统别处的冗余数据来重建
恢复的实现技术
- 数据转储
- 静态转储
- 动态转储
- 登记日志文件
- 登记的次序严格按并发事务执行的时间次序
- 必须先写日志文件,后写数据库
具有检查点的恢复技术
周期性执行建立检查点,保存数据库状态
使用检查点技术可以提升效率
数据库镜像
根据管理员的要求,自动把整个数据库或其中的关键数据复制到另一个磁盘上
每当数据库更新时,DBMS自动把更新后的数据复制进去
由DBMS保证镜像数据和主数据的一致性