ITPub博客

首页 > Linux操作系统 > Linux操作系统 > RMAN中catalog和nocatalog区别

RMAN中catalog和nocatalog区别

原创 Linux操作系统 作者:dvlue 时间:2011-04-12 11:25:02 0 删除 编辑

RMAN中catalog和nocatalog区别

本日志转自:http://wild163.blog.163.com/blog/static/43152880200871495112527/

 

nocatalog方式就是用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息。若为catalog则必须要首先要创建目录备份数据库,建立恢复目录。

当通过rman nocatalog方式备份Oracle,Oracle使用controlfile存放备份信息。因此,当使用rman nocatalog方式备份时,备份controlfile是非常重要的。

初始化参数control_file__record_keep_time设置备份信息保存时间,到规定时间就自动清除以前的备份信息:

SQL> alter sysem set control_file_record_keep_time=7 scope=spfile;

有一个问题,当使用rman nocatalog恢复时,数据库必须是处于“mount”状态的。而Oracle startup mount的前提条件是control必须存在。因此,你必须在恢复datafile之前先恢复controlfile。使用rman catalog方式时,可以startup nomount然后restore controlfile;但使用rman nocatalog时,必须先用文件方式恢复controlfile。

下面对比一下rman nocatalog和rman catalog的恢复时的步骤,以便建立正确的备份策略(以下的恢复都是在online状态下的备份):

rman nocatalog恢复:

1) 建立oracle运行环境(包括init或sp文件)

2) 文件方式恢复controlfile到init文件指定的位置

3) startup mount

4) rman,恢复datafile

5) alter database open resetlogs

rman catalog恢复:

1) 建立oracle运行环境(包括init或sp文件)

2) rman ,restore controfile

3) alter database mount

4) rman, restore datafile

5) alter database open resetlogs

可以看出,rman nocatalog备份时,必须用文件方式备份controlfile。

另外,由于nocatalog时利用controlfile存放备份信息,建议将Oracle参数文件中的CONTROL_FILE_RECORD_KEEP_TIME值加大(缺省为7天), 该参数在$ORACLE_HOME/dbs/initSID.ora中(9i后也可能在spfile中,只能通过Oracle语句更改)。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7656893/viewspace-692295/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-06-26

  • 博文量
    45
  • 访问量
    98510