三叶草 发表于 2022-1-27 19:21:46

catalog方式的rman备份与恢复示例

注:catalog目录需要专门创建一个用于恢复的数据库

一、catalog备份
1、创建表空间

SQL>create tablespace rman datafile 'C:\oracle\product\10.2.0\oradata\orcl\rman01.dbf' size 50M
extent management local uniform size 128K;

2、创建用户

SQL>create user rman identified by rman
default tablespace rman
temporary tablespace temp#临时表空间
quota unlimited on rman;

3、授权

SQL>grant connect,resource,recovery_catalog_owner to rman;

4、创建恢复目录

C:\>rman catalog rman/rman
RMAN>create catalog;

5、注册需要备份的数据库【注册数据库需要同时连接到目标(target)数据库和目录(catalog)数据库】

C:\>rman catalog rman/rman target sys/orcl
RMAN>register database;

注销已注册的数据库:

RMAN>unregister database;

6、使用catalog数据库对目标数据库进行备份

C:\>rman catalog rman/rman target sys/orcl
RMAN>create script fullbk{      #创建备份脚本
backup full tag 'sys' database
include current controlfile
format 'c:\backup\sysfull_%d_%T_%s'
plus archivelog
format 'c:\backup\sysarch_%d_T_%s'
delete all input;
}
RMAN>run{execute script fullbk;}#调用脚本

删除脚本:

RMAN>delete script fullbk;

二、catalog恢复
1、

C:\>rman catalog rman/rman target sys/orcl

2、接下来参考本博文“rman恢复方案和异机恢复”
三、catalog和nocatalog区别
1、nocatalog方式:用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息,即RMAN的备份信息写在本地控制文件里面。
2、catalog方式:必须要首先要创建目录备份数据库(catalog,也称知识库),建立恢复目录,即数据库的备份信息写到恢复目录里面。
3、当通过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;

https://www.uoften.com/dbs/oracle/20180415/73112.html
页: [1]
查看完整版本: catalog方式的rman备份与恢复示例