RMAN 的备份恢复策略里,recovery window是个挺关键的参数,别小看了它。设置成 7,其实就是告诉 RMAN:“喂,我要你能把数据库恢复到最近 7 天内的任意一个时间点。”所以文件要怎么备份?简单,至少保留 7 天的所有必要备份文件。
如果你只留了最近 4 天的,那对不起,想恢复到 6 天前就没戏了。这个时候日志文件的配合也重要,别光顾着备数据文件,归档日志也得备全。不然恢复时日志缺了,再多备份也白搭。
哦对,RMAN 的默认 recovery window 是 7 天,挺合理,适合大多数日常需求。再比如你系统每天都跑一次全库备份,那基本上也能覆盖这 7 天窗口。但如果是增量备份,那就要注意,别哪天跳了备份,结果窗口就断了。
这个策略在生产环境里蛮实用的,尤其对那些对历史数据恢复要求比较高的系统。举个例子,财务系统、订单系统,老板突然想看 6 天前的状态,你得能整出来。这时候,有没有备齐、备对,差别可大了。
如果你想搞清楚 RMAN 的玩法,可以看看RMAN 备份与恢复这篇文章,写得还挺清楚。另外,Oracle 数据库备份和恢复策略也可以翻一翻,有不少细节讲得挺细。
建议你设好recovery window参数后,定期检查下你的备份策略有没有覆盖整个窗口。别等出事了才发现缺文件,那可真是抓瞎。
如果你搞的是 Oracle 备份,又不想手动记太多细节,RMAN 的这种时间窗口策略真的是个挺省心的办法。