windows平台的异机恢复,目录不同
1.异机环境准备
安装oracle介质
安装nbu客户端
在异机主机的host文件中添加nbu server主机和原主机信息
2.恢复spfile文件
C:\>oradim -new -sid ybb
SQL> startup nomount
C:\> rman target /
RMAN> set dbid= 884218943
RMAN> run {
allocate channel ch02 type 'sbt_tape'
parms="ENV=(NB_ORA_CLIENT=olddb,NB_ORA_SERV=netbackup)";
restore spfile from 'c-884218943-20160628-03';
release channel ch02;
} 分配的通道: ch02
通道 ch02: SID=130 设备类型=SBT_TAPE
通道ch02: Veritas NetBackup for Oracle - Release 7.6 (20141027) 启动 restore 于 19-7月 -16 通道 ch02: 正在从 AUTOBACKUP c-884218943-20160628-03 还原 spfile
通道 ch02: 从 AUTOBACKUP 还原 SPFILE 已完成
完成 restore 于 19-7月 -16 释放的通道: ch02
3.恢复控制文件
RMAN> run {
2> allocate channel ch03 type 'sbt_tape'
3> parms="ENV=(NB_ORA_CLIENT=olddb,NB_ORA_SERV=netbackup)";
4> restore controlfile from 'c-884218943-20160629-03';
5> release channel ch03;
6> } 分配的通道: ch03
通道 ch03: SID=63 设备类型=SBT_TAPE
通道ch03: Veritas NetBackup for Oracle - Release 7.6 (20141027) 启动 restore 于 19-7月 -16 通道 ch03: 正在还原控制文件
通道 ch03: 还原完成, 用时: 00:00:07
输出文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\CONTROL01.CTL
输出文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\CONTROL02.CTL
完成 restore 于 19-7月 -16 释放的通道: ch03
4.将数据库置于mount状态
RMAN> sql 'alter database mount';
5.恢复数据文件
RMAN> run{
2> allocate channel ch01 type 'sbt_tape';
3> SEND 'NB_ORA_SERV=netbackup,NB_ORA_CLIENT=olddb';
4> set newname for datafile 'D:\app\Administrator\oradata\ybb\SYSTEM01.DBF' to 'C:\app\Administrator\oradata\ybb\SYSTEM01.DBF';
5> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\SYSAUX01.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\SYSAUX01.DBF';
6> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\UNDOTBS01.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\UNDOTBS01.DBF';
7> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\USERS01.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\USERS01.DBF';
8> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA01.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA01.DBF';
9> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA02.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA02.DBF';
10> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA03.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA03.DBF';
11> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX01.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX01.DBF';
12> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX02.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX02.DBF';
13> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX03.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX03.DBF';
14> set newname for datafile 'D:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA0101.DBF' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA0101.DBF';
15> restore database;
16> switch datafile all;
17> recover database until scn 272947828;
18> release channel ch01;
19> } 分配的通道: ch01
通道 ch01: SID=63 设备类型=SBT_TAPE
通道ch01: Veritas NetBackup for Oracle - Release 7.6 (20141027) 向通道发命令: ch01 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 正在执行命令: SET NEWNAME 启动 restore 于 20-7月 -16 通道 ch01: 正在开始还原数据文件备份集
通道 ch01: 正在指定从备份集还原的数据文件
通道 ch01: 将数据文件 00001 还原到 C:\app\Administrator\oradata\ybb\SYSTEM01.DBF
通道 ch01: 将数据文件 00002 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\SYSAUX01.DBF
通道 ch01: 将数据文件 00003 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\UNDOTBS01.DBF
通道 ch01: 将数据文件 00004 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\USERS01.DBF
通道 ch01: 将数据文件 00005 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA01.DBF
通道 ch01: 将数据文件 00006 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA02.DBF
通道 ch01: 将数据文件 00007 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA03.DBF
通道 ch01: 将数据文件 00008 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX01.DBF
通道 ch01: 将数据文件 00009 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX02.DBF
通道 ch01: 将数据文件 00010 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX03.DBF
通道 ch01: 将数据文件 00011 还原到 C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA0101.DBF
通道 ch01: 正在读取备份片段 bk_dybb_u95r99ttg_s3365_p1_t915732400
通道 ch01: 段句柄 = bk_dybb_u95r99ttg_s3365_p1_t915732400 标记 = TAG20160628T180639
通道 ch01: 已还原备份片段 1
通道 ch01: 还原完成, 用时: 00:04:56
完成 restore 于 20-7月 -16 数据文件 1 已转换成数据文件副本
输入数据文件副本 RECID=15 STAMP=917694346 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\SYSTEM01.DBF
数据文件 2 已转换成数据文件副本
输入数据文件副本 RECID=16 STAMP=917694346 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\SYSAUX01.DBF
数据文件 3 已转换成数据文件副本
输入数据文件副本 RECID=17 STAMP=917694346 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\UNDOTBS01.DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 RECID=18 STAMP=917694346 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\USERS01.DBF
数据文件 5 已转换成数据文件副本
输入数据文件副本 RECID=19 STAMP=917694346 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA01.DBF
数据文件 6 已转换成数据文件副本
输入数据文件副本 RECID=20 STAMP=917694346 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA02.DBF
数据文件 7 已转换成数据文件副本
输入数据文件副本 RECID=21 STAMP=917694346 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA03.DBF
数据文件 8 已转换成数据文件副本
输入数据文件副本 RECID=22 STAMP=917694346 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX01.DBF
数据文件 9 已转换成数据文件副本
输入数据文件副本 RECID=23 STAMP=917694347 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX02.DBF
数据文件 10 已转换成数据文件副本
输入数据文件副本 RECID=24 STAMP=917694347 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_INDEX03.DBF
数据文件 11 已转换成数据文件副本
输入数据文件副本 RECID=25 STAMP=917694347 文件名=C:\APP\ADMINISTRATOR\ORADATA\ybb\NNC_DATA0101.DBF 启动 recover 于 20-7月 -16 正在开始介质的恢复 通道 ch01: 正在开始将归档日志还原到默认目标
通道 ch01: 正在还原归档日志
归档日志线程=1 序列=25090
通道 ch01: 正在读取备份片段 arch_dybb_u97r99ue8_s3367_p1_t915732936
通道 ch01: 段句柄 = arch_dybb_u97r99ue8_s3367_p1_t915732936 标记 = TAG20160628T181535
通道 ch01: 已还原备份片段 1
通道 ch01: 还原完成, 用时: 00:00:25
归档日志文件名=C:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\RDBMS\ARC0000025090_0818501732.0001 线程=1 序列=25090
介质恢复完成, 用时: 00:00:00
完成 recover 于 20-7月 -16 释放的通道: ch01
6.打开数据库
RMAN> alter database open resetlogs; RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: alter db 命令 (在 07/20/2016 11:08:53 上) 失败
ORA-00344: 无法重新创建联机日志 'D:\APP\ADMINISTRATOR\ORADATA\ybb\REDO01A.LOG' ORA-27040: 文件创建错误, 无法创建文件
OSD-04002: 无法打开文件
O/S-Error: (OS 21) 设备未就绪。
7.针对上一步出现的错误,重命名redo日志
SQL> alter database rename file 'D:\APP\ADMINISTRATOR\ORADATA\ybb\REDO01A.LOG' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\REDO01A.LOG';
SQL> alter database rename file 'D:\APP\ADMINISTRATOR\ORADATA\ybb\REDO01B.LOG' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\REDO01B.LOG';
SQL> alter database rename file 'D:\APP\ADMINISTRATOR\ORADATA\ybb\REDO02A.LOG' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\REDO02A.LOG';
SQL> alter database rename file 'D:\APP\ADMINISTRATOR\ORADATA\ybb\REDO02B.LOG' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\REDO02B.LOG';
SQL> alter database rename file 'D:\APP\ADMINISTRATOR\ORADATA\ybb\REDO03A.LOG' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\REDO03A.LOG';
SQL> alter database rename file 'D:\APP\ADMINISTRATOR\ORADATA\ybb\REDO03B.LOG' to 'C:\APP\ADMINISTRATOR\ORADATA\ybb\REDO03B.LOG';
8.重新打开数据库
RMAN> alter database open resetlogs; 数据库已打开 RMAN>