Oracle RMAN Catalog和Nocatalog有什么区别

nocatalog方式:用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息,即RMAN的 备份信息写在本地控制文件里面。

catalog方式:必须要首先要创建目录备份数据库(catalog,也称知识库),建立恢复目录,即数据库的备份信息写到恢复目录里面。

当通过rman nocatalog方式备份Oracle数据库,Oracle使用controlfile存放RMAN的备份信息。因此,当使用Rman nocatalog方式备份数据库时,一定 要记得备份controlfile。

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

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

注意:

当使用Rman nocatalog恢复时,数据库至少是处于“mount”状态的,即一定要先加载控制文件,不然RMAN找不到记录的备份信息。而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文件指定的位置(或者先启动到NOMOUNT,在RMAN中restore controlfile from autobackup)

3) startup mount

4) Rman,restore datafile,recover datafile

5) alter database open resetlogs

Rman catalog恢复:

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

2) Rman ,restore controfile

3) alter database mount

4) Rman, restore datafile,recover 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语句更改)。

恢复目录(即catalog方式)支持如下的命令

{CREATE|UPGRADE|DROP} CATALOG

{CREATE|DELETE|REPLACE|PRINT} SCRIPT.

LIST INCARNATION

REGISTER DATABASE

REPORT SCHEMA AT TIME

RESET DATABASE

RESYNC CATALOG

1、Resync命令

Resync可以同步数据库与恢复目录之间的信息,在实际情况下,rman一般可以自动同步。

在如下情况下需要同步

·数据库物理结构的改变

·数据文件增加或者是改变大小

·表空间删除

·回滚段的创建与删除

·每产生10个归档日志

2、Reset 命令

目标数据库resetlogs 之后,需要重新设置恢复目录。Reset命令就用来重新设置恢复目录。

时间: 2024-11-03 06:34:47

Oracle RMAN Catalog和Nocatalog有什么区别的相关文章

Oracle RMAN CATALOG数据库配置过程

RMAN CATALOG数据库的配置 1.catalog database 的功能 1)集中存放rman的资料库(备份的元数据),并且可以和target database 的controlfile同步 2)存放rman的备份脚本 2.catalog database 的配置 1)需要建立一个单独的database 02:43:21 SQL> show parameter name NAME                                 TYPE        VALUE ---

RMAN中catalog和nocatalog区别介绍

  nocatalog方式就是用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息.若为catalog则必须要首先要创建目录备份数据库,建立恢复目录. catlog建立恢复目录的例子: 1.创建Catalog所需要的表空间 SQL>create tablespace rman_ts  datafile '/u01/oracle/oradata/ora10g/rmants.dbf'  size 20M; 2.创建RMAN用户并

备份恢复5——rman增量累积备份+catalog和nocatalog

一.Nocatalog  Nocatalog方式 就是用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息.因 此,当使用rman nocatalog方式备份时,备份controlfile是非常重要的.   由于nocatalog时利用controlfile存放备份信息,建议将Oracle参数文件中的CONTROL_FILE_RECORD_KEEP_TIME值加大(缺省为7天), 参数在$ORACLE_HOME/dbs/in

(转)Oracle RMAN快速入门指南

oracle|快速入门 前言这篇文章主要介绍RMAN的常用方法,其中包含了作者一些自己的经验,里面的实验也基本全在WIN 2K和ORACLE 8.1.6环境下测试成功(因为这个环境比较容易实现). 本文借鉴了网上一些高手的相关文章,希望大侠们不要见怪,此处一并谢过. 这篇文章主要是在北京出差期间写的,回到家后整理修改了一下,时间比较仓促,同时因为篇幅有限,一些技术细节不能一一覆盖了,只希望能够帮助新手入门的作用,想真正熟练掌握RMAN,必须经过较长时间的实践磨练才可以,尤其需要在工程中获得宝贵的

Oracle RMAN快速入门指南_oracle

正在看的ORACLE教程是:Oracle RMAN快速入门指南.前言: 这篇文章主要介绍RMAN的常用方法,其中包含了作者一些自己的经验,里面的实验也基本全在WIN 2K和ORACLE 8.1.6环境下测试成功(因为这个环境比较容易实现). 本文借鉴了网上一些高手的相关文章,希望大侠们不要见怪,此处一并谢过. 这篇文章主要是在北京出差期间写的,回到家后整理修改了一下,时间比较仓促,同时因为篇幅有限,一些技术细节不能一一覆盖了,只希望能够帮助新手入门的作用,想真正熟练掌握RMAN,必须经过较长时间

Oracle RMAN快速入门指南

oracle|快速入门 前言这篇文章主要介绍RMAN的常用方法,其中包含了作者一些自己的经验,里面的实验也基本全在WIN 2K和ORACLE 8.1.6环境下测试成功(因为这个环境比较容易实现). 本文借鉴了网上一些高手的相关文章,希望大侠们不要见怪,此处一并谢过. 这篇文章主要是在北京出差期间写的,回到家后整理修改了一下,时间比较仓促,同时因为篇幅有限,一些技术细节不能一一覆盖了,只希望能够帮助新手入门的作用,想真正熟练掌握RMAN,必须经过较长时间的实践磨练才可以,尤其需要在工程中获得宝贵的

Oracle RMAN的备份与恢复过程

Rman学习总结如下,已经测试运行过,没有问题. 1.设置数据库为归档模式 检查归档模式 Select log_mode from v$database; 若为noarchivelog,则需设置为归档模式 Shutdown immediate; Startup mount; Alter database archivelog; 2.创建恢复目录所需要的表空间 Create tablespace rman_ts Datafile 'E:ORACLEPRODUCT10.1.0ORADATAORACL

oracle RMAN备份报错的诊断过程(一) 问题的现象

今天检查数据库中的备份输出脚本时,发现RMAN备份出现了错误. 这一篇主要描述问题的现象. 错误信息如下: bash-3.00$ more /data/backup/backup_tradedb_090523.out Script. /data/backup/backup_tradedb.sh ==== started on Sat May 23 23:00:00 CST 2009 ==== RMAN: /opt/oracle/product/10.2/database/bin/rman ORA

oracle rman set newname时报错RMAN-06015

某数据库restore之后,尝试set newname但是报错RMAN-06015.我们可以先手工catalog进去,在set newname. 可以看如下的测试案例: --1.纯粹的set newname是可以的 RMAN> run{ 2> set newname for datafile 6 to '/u01/oracle11gR2/oracle/oradata/ora11g/U_NOLOB2.dbf222'; 3> }   executing command: SET NEWNAM