1、目的
该备份采用nfs,将源库的数据通过rman备份到了目标端,计划在目标端通过rman将其恢复,备份文件有归档日志、控制文件、数据文件、参数文件;
2、首先要知道源库的DBID,建立对应的目录,如db_recovery_file_dest对应的路径,数据文件、控制文件存放路径;
3、在目标端通过rman登录;
[oracle@standbyDB ~]$ export ORACLE_SID=prod3
[oracle@standbyDB ~]$ rman target /
恢复管理器: Release 11.2.0.4.0 - Production on 星期五 7月 3 17:20:21 2020
Copyright © 1982, 2011, Oracle and/or its affiliates. All rights reserved.
已连接到目标数据库 (未启动)
设置目标库的DBID:
RMAN> set DBID=2265278232
正在执行命令: SET DBID
将数据库启动到nomount状态:
RMAN> startup nomount
Oracle 实例已启动
系统全局区域总计 313159680 字节
Fixed Size 2252824 字节
Variable Size 218107880 字节
Database Buffers 88080384 字节
Redo Buffers 4718592 字节
还原spfile文件:
RMAN> restore spfile to pfile ‘/u01/app/oracle/product/11.2.0.4/db_1/dbs/initprod1.ora’ from ‘/rmanbk/spfile_PROD1_20200630_32_1’;
启动 restore 于 2020-07-03 17:59:32
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在从 AUTOBACKUP /rmanbk/spfile_PROD1_20200630_32_1 还原 spfile
通道 ORA_DISK_1: 从 AUTOBACKUP 还原 SPFILE 已完成
完成 restore 于 2020-07-03 17:59:32
spfile文件已恢复完成,关闭实例,重新进入nomount状态;
RMAN> shutdown immediate
Oracle 实例已关闭
RMAN> startup nomount
已连接到目标数据库 (未启动)
Oracle 实例已启动
系统全局区域总计 313159680 字节
Fixed Size 2252824 字节
Variable Size 218107880 字节
Database Buffers 88080384 字节
Redo Buffers 4718592 字节
恢复控制文件:
RMAN> restore controlfile from ‘/rmanbk/ctl_PROD1_20200630_31_1’;
启动 restore 于 2020-07-03 18:04:12
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=19 设备类型=DISK
通道 ORA_DISK_1: 正在还原控制文件
通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
输出文件名=/u01/app/oracle/oradata/prod3/control01.ctl
输出文件名=/u01/app/oracle/oradata/prod3/control02.ctl
完成 restore 于 2020-07-03 18:04:13
修改数据库到mount状态:
RMAN> alter database mount;
数据库已装载
释放的通道: ORA_DISK_1
还原数据库文件:
RMAN> restore database;
启动 restore 于 2020-07-03 18:24:39
启动 implicit crosscheck backup 于 2020-07-03 18:24:39
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=19 设备类型=DISK
分配的通道: ORA_DISK_2
通道 ORA_DISK_2: SID=20 设备类型=DISK
分配的通道: ORA_DISK_3
通道 ORA_DISK_3: SID=21 设备类型=DISK
已交叉检验的 5 对象
已交叉检验的 18 对象
完成 implicit crosscheck backup 于 2020-07-03 18:24:41
启动 implicit crosscheck copy 于 2020-07-03 18:24:41
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
使用通道 ORA_DISK_3
完成 implicit crosscheck copy 于 2020-07-03 18:24:41
搜索恢复区中的所有文件
正在编制文件目录…
没有为文件编制目录
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
使用通道 ORA_DISK_3
通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00003 还原到 /u01/app/oracle/oradata/prod1/undotbs01.dbf
通道 ORA_DISK_1: 将数据文件 00004 还原到 /u01/app/oracle/oradata/prod1/users01.dbf
通道 ORA_DISK_1: 正在读取备份片段 /rmanbk/inc1_PROD1_20200630_25_1
通道 ORA_DISK_2: 正在开始还原数据文件备份集
通道 ORA_DISK_2: 正在指定从备份集还原的数据文件
通道 ORA_DISK_2: 将数据文件 00001 还原到 /u01/app/oracle/oradata/prod1/system01.dbf
通道 ORA_DISK_2: 将数据文件 00002 还原到 /u01/app/oracle/oradata/prod1/sysaux01.dbf
通道 ORA_DISK_2: 正在读取备份片段 /rmanbk/inc1_PROD1_20200630_26_1
通道 ORA_DISK_1: 段句柄 = /rmanbk/inc1_PROD1_20200630_25_1 标记 = TAG20200630T200138
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:45
通道 ORA_DISK_2: 段句柄 = /rmanbk/inc1_PROD1_20200630_26_1 标记 = TAG20200630T200138
通道 ORA_DISK_2: 已还原备份片段 1
通道 ORA_DISK_2: 还原完成, 用时: 00:00:46
完成 restore 于 2020-07-03 18:25:27
恢复归档日志:
查看归档日志。
RMAN> list backup of archivelog all;
备份集列表
BS 关键字 大小 设备类型占用时间 完成时间
2 21.94M DISK 00:00:04 2020-06-24 16:00:20
BP 关键字: 2 状态: EXPIRED 已压缩: YES 标记: TAG20200624T160015
段名:/u01/backup/04v3ij0g_1_1.bak
备份集 2 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 7 170302 2020-06-24 14:20:55 192382 2020-06-24 16:00:08
BS 关键字 大小 设备类型占用时间 完成时间
6 3.50K DISK 00:00:00 2020-06-24 16:00:55
BP 关键字: 6 状态: EXPIRED 已压缩: YES 标记: TAG20200624T160055
段名:/u01/backup/08v3ij1n_1_1.bak
备份集 6 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 8 192382 2020-06-24 16:00:08 192439 2020-06-24 16:00:53
BS 关键字 大小 设备类型占用时间 完成时间
11 1.12M DISK 00:00:00 2020-06-29 11:05:14
BP 关键字: 11 状态: EXPIRED 已压缩: YES 标记: TAG20200629T110514
段名:/u01/app/oracle/product/11.2.0.4/db_1/dbs/D:backuprmanbakarch_PROD1_20200629_15_1
备份集 11 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 2 223076 2020-06-29 08:39:13 244311 2020-06-29 09:18:12
BS 关键字 大小 设备类型占用时间 完成时间
12 438.50K DISK 00:00:00 2020-06-29 11:05:14
BP 关键字: 12 状态: EXPIRED 已压缩: YES 标记: TAG20200629T110514
段名:/u01/app/oracle/product/11.2.0.4/db_1/dbs/D:backuprmanbakarch_PROD1_20200629_16_1
备份集 12 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 3 244311 2020-06-29 09:18:12 244868 2020-06-29 09:35:08
1 4 244868 2020-06-29 09:35:08 265674 2020-06-29 10:05:07
BS 关键字 大小 设备类型占用时间 完成时间
13 1.36M DISK 00:00:01 2020-06-29 11:05:15
BP 关键字: 13 状态: EXPIRED 已压缩: YES 标记: TAG20200629T110514
段名:/u01/app/oracle/product/11.2.0.4/db_1/dbs/D:backuprmanbakarch_PROD1_20200629_17_1
备份集 13 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 5 265674 2020-06-29 10:05:07 267883 2020-06-29 11:05:12
BS 关键字 大小 设备类型占用时间 完成时间
14 2.00K DISK 00:00:00 2020-06-29 11:05:15
BP 关键字: 14 状态: EXPIRED 已压缩: YES 标记: TAG20200629T110514
段名:/u01/app/oracle/product/11.2.0.4/db_1/dbs/D:backuprmanbakarch_PROD1_20200629_18_1
备份集 14 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 6 267883 2020-06-29 11:05:12 267901 2020-06-29 11:05:13
BS 关键字 大小 设备类型占用时间 完成时间
21 102.00K DISK 00:00:00 2020-06-30 20:02:01
BP 关键字: 21 状态: AVAILABLE 已压缩: YES 标记: TAG20200630T200201
段名:/rmanbk/arch_PROD1_20200630_29_1
备份集 21 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 8 299413 2020-06-30 19:59:12 299965 2020-06-30 20:01:59
BS 关键字 大小 设备类型占用时间 完成时间
22 2.00K DISK 00:00:00 2020-06-30 20:02:01
BP 关键字: 22 状态: AVAILABLE 已压缩: YES 标记: TAG20200630T200201
段名:/rmanbk/arch_PROD1_20200630_30_1
备份集 22 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 9 299965 2020-06-30 20:01:59 299984 2020-06-30 20:02:00
BS 关键字 大小 设备类型占用时间 完成时间
23 5.49M DISK 00:00:01 2020-06-30 20:02:02
BP 关键字: 23 状态: AVAILABLE 已压缩: YES 标记: TAG20200630T200201
段名:/rmanbk/arch_PROD1_20200630_28_1
备份集 23 中的已存档日志列表
线程序列 低 SCN 时间下限 下一个 SCN 下一次
1 7 267901 2020-06-29 11:05:13 299413 2020-06-30 19:59:12
RMAN> restore archivelog from logseq 9;
启动 restore 于 2020-07-03 18:29:08
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
使用通道 ORA_DISK_3
通道 ORA_DISK_1: 正在开始将归档日志还原到默认目标
通道 ORA_DISK_1: 正在还原归档日志
归档日志线程=1 序列=9
通道 ORA_DISK_1: 正在读取备份片段 /rmanbk/arch_PROD1_20200630_30_1
通道 ORA_DISK_1: 段句柄 = /rmanbk/arch_PROD1_20200630_30_1 标记 = TAG20200630T200201
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
完成 restore 于 2020-07-03 18:29:09
恢复数据库:
recover database;
打开数据库:
RMAN> alter database open resetlogs;
数据库已打开