1.试述事务的概念及事务的四个特性,恢复技术能保证事务那些特性?
答:事务是指用户定义的数据库操作,其具有原子性(事务要么做完,要么不做)、一致性(事务要么处于做前、要么做后的状态)、隔离性(事务之间隔离不打扰)、持续性(事务对数据库中数据改变是永久的)。恢复技术可以保证事务的原子性和一致性,
2.数据库运行中可能产生的故障有?那些故障影响事务正常执行?哪些破坏数据库数据?
答:
可能故障:事务故障、系统故障、介质故障、计算机病毒
影响事务:事务故障、系统故障、介质故障
影响数据库数据:介质故障、计算机病毒
3.数据库恢复的基本技术有哪些?
数据转储
登记日志文件
利用二者可以将数据库从错误状态恢复到某一已知的正确状态
4.什么是日志文件?为什么要设立日志文件?
答:日志文件是用来记录事务对数据库更新操作的文件。
其可以用来恢复事务故障、系统故障、并协助后备副本进行介质故障恢复。
5.登记日志文件为什么要先写文件、后写入数据库?
答:如果先写如数据库,再写日志文件,在这两者操作之间发生了故障,则无法恢复这个
修改。反之在按日志文件恢复时只是执行了一次不必要的UNDO操作,不会影响数据
库的正确性。
6.针对不同的故障,试给出恢复的策略和方法。
答:事务故障:其是在事务进行时发生故障,恢复时应该撤销事务已对数据库进行的修改反向扫描日志文件,查找到更新操作后,对其执行逆操作,直到事务开始标记
系统故障:其针对未完成事务对数据库数据的更改同上,针对已完成事务未写入数据库进行重做。正向扫描日志文件,将未完成事务和已完成事务分别计入UNDO、REDO栈,其中UNDO操作如上,REDO操作则是正向扫描日志,对每一个事务重新执行操作
介质故障:介质故障对数据库和事务均有影响,应该重装数据库,并重做已完成事务。装入最新数据库后备副本(动态转储还要结合日志文件,类似系统故障),恢复到最近一次转储的一致性状态,结合最近转储后的日志文件,进行REDO操作