欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-07-20 16:07:27
注:catalog目录需要专门创建一个用于恢复的数据库一、catalog备份1、创建表空间复制代码 代码如下:sql>create tablespace rman d...

注: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;