7.主库备份控制文件
RMAN> BACKUP CURRENT CONTROLFILE FOR STANDBY FORMAT
'/home/oracle/ForStandbyktss.bck';
8.将控制文件备份片传到远程,备库记录备份片信息
scp bku* oracle@10.80.16.21:/data/oracle/backdir
RMAN> CATALOG START WITH '/data/oracle/backdir';
9.重启实例到nomount状态
RMAN> SHUTDOWN;
RMAN> STARTUP NOMOUNT;
10.恢复控制文件
RMAN> RESTORE STANDBY CONTROLFILE FROM
'/data/oracle/backdir/ForStandbyktss.bck';
11.启动数据库到mount状态
RMAN> ALTER DATABASE MOUNT;
11. 重新记录文件位置到控制文件
RMAN> CATALOG START WITH '+data/ktssdg/datafile/';
select 'set newname for datafile '||file_id||' to ''/tpexp/prod/oradata'||
substr(file_name,22,100)||''';'
from dba_data_files
union all
select 'set newname for tempfile '||file_id||' to ''/tpexp/prod/oradata'||
substr(file_name,22,100)||''';'
from dba_temp_files ;
run{
allocate channel ch00 type disk;
set newname for datafile 514 to '/tpdata/oradata/tpl22/tplife_l18.dbf';
set newname for datafile 515 to '/tpdata/oradata/tpl22/tplife_l19.dbf';
set newname for datafile 516 to '/tpdata/oradata/tpl22/tplife_l20.dbf';
set newname for datafile 517 to '/tpdata/oradata/tpl2/tpapp05.dbf';
set newname for datafile 518 to '/tpdata/oradata/tpl2/tpapp06.dbf';
set newname for datafile 519 to '/tpdata/oradata/tpl22/taipinglifelob_03.dbf';
set newname for tempfile 5 to '/tpdata/oradata/tpl2/tempuser02.dbf';
set newname for tempfile 1 to '/tpdata/oradata/tpl2/tempapp03.dbf';
set newname for tempfile 8 to '/tpdata/oradata/tpl2/tempapp01.dbf';
set newname for tempfile 9 to '/tpdata/oradata/tpl2/tempapp02.dbf';
set newname for tempfile 13 to '/tpdata/oradata/tpl2/temp_sys01.dbf';
set newname for tempfile 16 to '/tpdata/oradata/tpl2/tempuser01.dbf'
switch datafile all;
release channel ch00;
}
RMAN> SWITCH DATABASE TO COPY;
12.open数据库,恢复日志应用
RMAN> alter database open;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
alter database recover managed standby database using current logfile disconnect