Oracle RMAN备份小结

Oracle RMAN备份恢复有两种情况,一种是没有catalog的,是使用控制文件来存储备份资料库,另外一种是有catalog 的,这样可以用目录数据库来存储备份资料库。

下面介绍下使用catalog 备份的步骤:

1. 在恢复目录数据库上建立一个表空间:create tablespace rcat_ts datafile '' size 15M;

2. 在恢复目录数据库上建立一个恢复用户:create user rman identified rman temporary tablespace temp default tablespace rcat_ts quato unlimited on rcat_ts ;

3. 授予相关权限:grant recovery_catalog_owner to rman;

4. 在恢复目录数据库和目标数据库上互相添加对方的tns信息,方便在两端都可以直接备份;

5. 登录恢复目录数据库,然后创建恢复目录:

 rman catalog rman/rman@tns_1;

 create catalog;

6. 然后同时登录恢复目录数据库和目标数据库(不管在哪个上面登录都可以):

rman target sys/oracle@tns_2 catalog rman/rman@tns_1;(目标数据库上要用sys登录)

register database; 注册目标数据库

7. 使用catalog有一个好处就是可以使用RMAN脚本,批量执行rman  command;

 create [global] script script_name {rman command}; 

加上global参数,说明恢复目录上面的所有注册数据库都可以使用脚本,否则只能对应的目标数据库可以使用。

rman command一般可以有:

RMAN> backup database format '/u01/app/oracle/rmanbak/whole_%d_%U'; --备份整个数据库

RMAN> backup as compressed backupset  database format '/u01/app/oracle/rmanbak/whole_%d_%U';

 --备份整个数据库并压缩备份集

RMAN> backup as copy datafile  format '/u01/app/oracle/rmanbak/df_%d_%U';

--备份数据文件,类型为镜像备份

RMAN> backup tablespace users,example format '/u01/app/oracle/rmanbak/tb_%d_%U';

--备份表空间

RMAN> backup tablespace temp; 

 --临时表空间不需要备份(执行会报错)

RMAN> backup current controlfile;

--单独备份控制文件及参数文件

RMAN> backup datafile 4 include current controlfile;

--备份数据文件时包含控制文件

下面是备份归档日志文件

备份归档日志时仅仅备份归档过的数据文件(不备份联机重做日志文件)
备份归档日志时总是对归档日志做完整备份
RMAN对归档日志备份前会自动做一次日志切换,且从一组归档日志中备份未损坏的归档日志
RMAN会自动判断哪些归档日志需要进行备份
归档日志的备份集不能包含其它类型的文件

RMAN> backup
2> format '/u01/app/oracle/rmanbak/lf_%d_%U'
3> archivelog all delete input; --delete input 删除所有已经备份过的归档日志

RMAN> backup --此种写法实现了上述相同的功能
2> archivelog all delete input
3> format '/u01/app/oracle/rmanbak/lf_%d_%U';

RMAN> backup archivelog sequence between 50 and 120 thread 1 delete input;

RMAN> backup archivelog from time "sysdate-15" until time "sysdate-7";

RMAN> backup
2> format '/u01/app/oracle/rmanbak/lf_%d_%U'
3> archivelog from sequence=80
4> delete input;

使用plus archivelog时备份数据库完成的动作(backup database plus archivelog)
1.首先执行alter system archive log current 命令(对当前日志归档)
2.执行backup archivelog all 命令(对所有归档日志进行备份)
3.执行backup database命令中指定的数据文件、表空间等
4.再次执行alter system archive log current
5.备份在备份操作期间产生的新的归档日志

--执行下面的命令,并观察备份列出的信息,可以看到使用plus archivelog时使用了上面描述的步骤来进行备份
RMAN> backup database plus archivelog
2> format '/u01/app/oracle/rmanbak/lg_%d_%U' delete input;


8. 使用run执行RMAN脚本:

run 

{

allocate channel ch1 device type disk;

allocate channel ch2 device type disk;

execute script script_name;

}


使用RMAN备份的操作链接:

http://blog.csdn.net/leshami/article/details/6032739







--备份数据文件时包含控制文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值