RMAN Catalog 和 Nocatalog 的区别

一.Nocatalog

Nocatalog方式就是用controlfile作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息。因此,当使用rmannocatalog方式备份时,备份controlfile是非常重要的。

由于nocatalog时利用controlfile存放备份信息,建议将Oracle参数文件中的CONTROL_FILE_RECORD_KEEP_TIME值加大(缺省为7天),参数在$ORACLE_HOME/dbs/initSID.ora,该参数control_file__record_keep_time设置备份信息保存时间,到规定时间就自动清除以前的备份信息

SQL>showparametercontrol

NAMETYPEVALUE

-----------------------------------------------------------------------------

control_file_record_keep_timeinteger7

control_filesstringD:/APP/ADMINISTRATOR/ORADATA/O

control_management_pack_accessstringDIAGNOSTIC+TUNING

SQL>altersystemsetcontrol_file_record_keep_time=14scope=both;

系统已更改。

SQL>selectname,value,issys_modifiablefromv$parameterwherename='control_file_record_keep_time';

NAMEVALUEISSYS_MOD

----------------------------------

control_file_re14IMMEDIATE

二.Catalog

Catalog则必须要首先要创建目录备份数据库,建立恢复目录。示例如下:

1.创建Catalog所需要的表空间

SQL>createtablespacerman_ts datafile'/u01/oracle/oradata/ora10g/rmants.dbf'size 20M;

2.创建RMAN用户并授权

SQL>createuserrmanidentifiedbyrmandefaulttablespacerman_tsquotaunlimitedonrman_ts;

SQL>grantrecovery_catalog_ownertorman;(grantconnecttorman)

查看角色所拥有的权限:select*fromdba_sys_privswheregrantee='RECOVERY_CATALOG_OWNER';

(RECOVER_CATALOG_OWNER,CONNECT,RESOURCE)

3.创建恢复目录

oracle>rmancatalogrman/rman

RMAN>createcatalogtablespacerman_ts;

RMAN>registerdatabase;(databasetargetdatabase)

databaseregisteredinrecoverycatalog

startingfullresyncofrecoverycatalog

fullresynccomplete

RMAN>connecttarget/;

以后要使用备份和恢复,需要连接到两个数据库中,命令:

oracle>rmantarget/catalogrman/rman(第一斜杠表示target数据库,catalog表示catalog目录rman/rman表示catalog用户名和密码)

命令执行后显示:

RecoveryManager:Release10.2.0.1.0-ProductiononWedDec1015:00:422008

Copyright(c)1982,2005,Oracle.Allrightsreserved.

connectedtotargetdatabase:ORA10G(DBID=3988862108)

connectedtorecoverycatalogdatabase

命令解释:

ReportschemaReportshema是指在数据库中需找schema

Listbackupcontrol读取信息

Crosscheckbackup看一下backup的文件,检查controlfile中的目录或文件是否真正在磁盘上

Deletebackupset2424代表backupset的编号,delete目录,也delete你的文件

RMAN备份与恢复实例

http://blog.csdn.net/tianlesoftware/archive/2009/10/20/4699320.aspx

OracleRman命令详解(Listreportbackupconfigure)

http://blog.csdn.net/tianlesoftware/archive/2009/12/13/4976998.aspx


注意,当使用rmannocatalog恢复时,数据库必须是处于“mount”状态的。而Oraclestartupmount的前提条件是control必须存在。因此,你必须在恢复datafile之前先恢复controlfile使用rmancatalog方式时,可以startupnomount然后restorecontrolfile;但使用rmannocatalog时,必须先用文件方式恢复controlfile

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

rmannocatalog恢复:
1)建立oracle运行环境(包括initsp文件)
2)文件方式恢复controlfileinit文件指定的位置
3)startupmount
4)rman,恢复datafile
5)alterdatabaseopenresetlogs

rmancatalog恢复:
1)建立oracle运行环境(包括initsp文件)
2)rmanrestorecontrofile
3)alterdatabasemount
4)rman,restoredatafile
5)alterdatabaseopenresetlogs

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


注:整理自网络

------------------------------------------------------------------------------

Bloghttp://blog.csdn.net/tianlesoftware

网上资源:http://tianlesoftware.download.csdn.net

相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx

DBA1群:62697716();DBA2群:62697977

<!--EndFragment-->

你可能感兴趣的:(rman)