- 事务和程序是两个概念,一个程序中包含多个事务
- 事无故障:非预期性的故障造成事务终止(运算溢出、并发事务发生死锁,而被选中撤销该事务)
- 系统故障:造成系统停止运转的任何事件,使得系统要重新启动(操作系统故障)
这类故障影响正在运行的所有事务,但不破坏数据库。
故障(造成数据库处于不一致性状态):有些已经完成的事务可能有一部分甚至全部留在缓冲区,尚未写回到磁盘上的物理数据库中;有些未完成的事务的结果可能已经送入物理数据库; - 介质故障:系统故障称为软故障,介质故障称为硬故障(磁盘损坏,磁头碰撞)
- 各类故障对数据库的影响有两种:一类是数据库本身被破坏,另一类是数据库没有被破坏,但是数据可能不正确
- 登记日志文件规则:登记的次序严格按照并发事务执行的时间次序;必须先写日志文件,再写数据库
- 事无故障的恢复:
(1)反向扫描日志文件,查找该事务的更新操作;
(2)对该事务的更新操作,执行逆处理,即将更新前的值写入数据库
(3)继续反向扫描日志文件,查找该事务的其他更新操作,做同样处理
(4)直到读到该事务的开始标记 - 系统故障的恢复:
(1)正向扫描日志文件,找出故障发生前已经提交的事务,将其标记为重做队列;同时找出故障发生时尚未完成的事务,将其标记我撤销队列
(2)对撤销队
第十章 数据库恢复技术
最新推荐文章于 2023-03-30 21:20:15 发布