实验环境:
Target Database:orcl Auxiliary Database:orcl
NOTE:
(1)RMAN 异机恢复的时候,db_name必须相同。如果说要想改成其他的实例名,可以在恢复成功后,用nid 命令修改。实例名的信息会记录到控制文件里,所以如果在恢复的时候,如果实例名不一致,恢复的时候会报错。
(2)如果恢复的路径和源库不一致,就需要在restore时用set 命令指定新位置。并且使用switch datafile all将信息更新到控制文件中。
在做duplicate的时候,RMAN 会自动根据pfile中的log_file_name_convert和db_file_name_convert来进行set 的转换。手工restore时,只能使用set 命令转换。
(3)异机恢复对相同目录和不同目录都做了说明。
(4)最后测试了NID 修改DBID 和DBNAME.
实验步骤:
一. Target库准备工作:
1. 查询DBID
$ sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on Mon Apr 11 19:56:08 2011
Copyright (c) 1982, 2009, Oracle. All rights reserved.
idle> conn /as sysdba
Connected.
sys@ORCL> select name,dbid from v$database;
NAME DBID
-------------------------------------------------- ----------
ORCL 1275959622
2. 备份Target Database
$ rman target sys/oracle@orcl
Recovery Manager: Release 11.2.0.1.0 - Production on Mon Apr 11 19:59:34 2011
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
connected to target database: ORCL (DBID=1275959622)
准备一个0级和1级备份:
RMAN> RUN {
2> allocate channel c1 type disk;
3> allocate channel c2 type disk;
4> backup incremental level=0 skip inaccessible filesperset 5 database format='/u02/backup/orcl_lev0_%U_%T' tag='orcl_lev0';
5> sql 'alter system archive log current';
6> backup archivelog all tag='arc_bak' format='/u02/backup/arch_%U_%T' skip inaccessible filesperset 5 not backed up 1 times delete input;
7> backup current controlfile tag='bak_ctlfile' format='/u02/backup/ctl_file_%U_%T';
8> backup spfile tag='spfile' format='/u02/backup/ORCL_spfile_%U_%T';
9> release channel c2;
10> release channel c1;
11> }
allocated channel: c1
channel c1: SID=198 device type=DISK
allocated channel: c2
channel c2: SID=10 device type=DISK
Starting backup at 11-APR-11
channel c1: starting incremental level 0 datafile backup set
channel c1: specifying datafile(s) in backup set
input datafile file number=00002 name=/u01/app/oracle/oradata/orcl/sysaux01.dbf
input datafile file number=00005 name=/u01/app/oracle/oradata/orcl/example01.dbf
input datafile file number=00003 name=/u01/app/oracle/oradata/orcl/undotbs01.dbf
channel c1: starting piece 1 at 11-APR-11
channel c2: starting incremental level 0 datafile backup set
channel c2: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/orcl/system01.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/orcl/users01.dbf
channel c2: starting piece 1 at 11-APR-11
channel c1: finished piece 1 at 11-APR-11
piece handle=/u02/backup/orcl_lev0_0km9hi1b_1_1_20110411 tag=ORCL_LEV0 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:03
channel c2: finished piece 1 at 11-APR-11
piece handle=/u02/backup/orcl_lev0_0lm9hi1b_1_1_20110411 tag=ORCL_LEV0 comment=NONE
channel c2: backup set complete, elapsed time: 00:00:03
Finished backup at 11-APR-11
Starting Control File and SPFILE Autobackup at 11-APR-11