软故障恢复
- 从物理一致性点恢复方案
- 恢复数据库的物理一致性
开发 DBMS 的主要要求之一是数据库存储的可靠性。
这一要求尤其意味着能够在任何类型的硬件和软件故障后恢复数据库的一致状态。
显然,执行恢复需要一些额外的信息。
在绝大多数现代关系 DBMS 中,这些冗余的附加信息以数据库更改日志的形式进行维护。因此,记录数据库更改的总体目标是确保数据库在发生任何故障后能够恢复到一致的状态。
由于维护数据库状态一致的基础是事务机制,因此日志记录和恢复与事务的概念密切相关。
恢复的一般原则如下:
已提交事务的结果必须存储在数据库的恢复状态中,即必须支持事务的持久性。
未提交事务的结果一定不能出现在数据库恢复状态。(否则数据库状态可能不一致。)
这意味着正在恢复数据库的最新一致状态。
记录信息有两个主要选项:
1.对于每个事务,由该事务维护一个单独的本地数据库更改日志。
这些本地日志用于单个事务的回滚,可以在main中维护。
更确切的说,是在虚拟里。
2.数据库管理系统内存
此外,还维护了一个通用的数据库更改日志,用于在软硬故障后恢复数据库的状态。