大家的Oracle备份环境中,是否建设有Catalog数据库用于存放备份记录啊?还是直接使用的控制文件?
在备份和恢复中,Catalog的主要优势在哪?哪些是必要因素说明必须要建设Catalog数据库。
1.rman的备份信息默认是存放在目标数据库的控制文件中的,存放时间由control_file_record_keep_time参数控制,默认是7天;同时,也可以把rman的备份信息保存到一个独立的数据库中,叫做recovery catalog;
2.使用recovery catalog可以保存更长时间的备份信息,当目标数据库的控制文件丢失时非常有用;
3.recovery catalog可以保存多个目标数据库的备份信息,可以保存RMAN stored scripts(类似于存储过程,就是一系列rman脚本);另外如果想要试用永久保留备份的话,必须使用catalog;
4.如果只是简单的备份管理需求的话,建议使用控制文件即可,因为如果使用recovery catalog的话,意味着还要对其它的数据库做备份管理,Licence费用;所以,只有在使用recovery catalog带来的好处比较大时才使用;
收起Catalog的优势就在于恢复的时候不需要繁琐的考虑恢复的datafile的时间点、需要的archivelog范围与你恢复的目标时间点等等相关问题,只需要指定最终恢复的目标时间点就可以。另外catalog对于备份记录的历史查询也提供了一种可靠方式。
使用控制文件进行恢复,也是一种不错的选择。但若是生产环境的最新控制文件(组)丢失,且你没有备份,依旧(利用旧控制文件+所有归档)可以恢复!!但那一场恢复必定让你……很痛~~~~~~快。
catalog的部署也需要注意,不建议保留太久的备份历史,控制catalog记录的数据库数量,否则ORACLE恢复时查询catalog将浪费掉很大一部分时间。
收起