在Oracle的备份与恢复的知识点中,经常会出现Restore 和 Recovery两个词。
由于这两个词在字典中的解释很接近,困扰了我很久。直到我在Oracle的官方文档中看到了以下解释。
Restoration:A corrupted data file is overwritten from a backup of the data file .The data file is at a prior point of time than the
current database.
Recovery:Recovery applies the changes to the individual blocks,using archive and redo information,to move the database
forward to the current point in time.
从原理上解释,Restore是使用备份文件,将数据库还原到过去的某个状态。
Recovery是使用redo日志和归档日志将数据库向前恢复,一步步的恢复到现在这个时点。
举个例子。
某生产环境的数据库,每天凌晨一点会作一次备份。某天下午两点时数据库文件损害,同时数据库宕机。
接着DBA开始恢复数据库。
1.首先,使用最近一次的备份文件还原数据库到当天凌晨一点的状态。但是凌晨一点到下午两点的数据丢失了。
2.接着,使用redo日志和归档日志,把当天凌晨一点开始的数据库操作重做一遍,直到下午两点数据库宕机前。
这样数据库就一点都不差的被恢复起来了。
所以,把Restore翻译为还原。Recovery翻译为恢复比较好。