问题:rman中有catalog的情况下备份集目录发生改变的情况下如何恢复?
解决方法:
c:>rman target sys/system@test catalog rman/rman@orcl
恢复管理器: release 10.2.0.1.0 - production on 星期四 12月 14 19:02:25 2006
copyright (c) 1982, 2005, oracle. all rights reserved.
连接到目标数据库: test (dbid=1906627575)
连接到恢复目录数据库
rman> create catalog;
恢复目录已创建
rman> register database;
注册在恢复目录中的数据库
正在启动全部恢复目录的 resync
完成全部 resync
rman> backup database format='e:rmanatest_%u.bak';
启动 backup 于 14-12月-06
分配的通道: ora_disk_1
通道 ora_disk_1: sid=141 devtype=disk
通道 ora_disk_1: 启动全部数据文件备份集
通道 ora_disk_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=e:oracleproduct10.2.0oradatatestsystem01.dbf
输入数据文件 fno=00003 name=e:oracleproduct10.2.0oradatatestsysaux01.dbf
输入数据文件 fno=00002 name=e:oracleproduct10.2.0oradatatestundotbs01.dbf
输入数据文件 fno=00004 name=e:oracleproduct10.2.0oradatatesttest.dbf
输入数据文件 fno=00005 name=e:oracleproduct10.2.0oradatatesttest1.dbf
通道 ora_disk_1: 正在启动段 1 于 14-12月-06
通道 ora_disk_1: 已完成段 1 于 14-12月-06
段句柄=e:rmanatest_03i4uuq5_1_1.bak 标记=tag20061214t190436 注释=none
通道 ora_disk_1: 备份集已完成, 经过时间:00:00:45
通道 ora_disk_1: 启动全部数据文件备份集
通道 ora_disk_1: 正在指定备份集中的数据文件
备份集中包括当前控制文件
在备份集中包含当前的 spfile
通道 ora_disk_1: 正在启动段 1 于 14-12月-06
通道 ora_disk_1: 已完成段 1 于 14-12月-06
段句柄=e:rmanatest_04i4uurj_1_1.bak 标记=tag20061214t190436 注释=none
通道 ora_disk_1: 备份集已完成, 经过时间:00:00:03
完成 backup 于 14-12月-06
rman> shutdown immediate
数据库已关闭
数据库已卸载
oracle 实例已关闭
rman> startup mount
已连接到目标数据库 (未启动)
oracle 实例已启动
数据库已装载
系统全局区域总计 268435456 字节
fixed size 1248476 字节
variable size 88081188 字节
database buffers 176160768 字节
redo buffers 2945024 字节
把备份目录a改成b
rman> restore database;
启动 restore 于 14-12月-06
分配的通道: ora_disk_1
通道 ora_disk_1: sid=156 devtype=disk
通道 ora_disk_1: 正在开始恢复数据文件备份集
通道 ora_disk_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到e:oracleproduct10.2.0oradatatestsystem01.dbf
正将数据文件00002恢复到e:oracleproduct10.2.0oradatatestundotbs01.dbf
正将数据文件00003恢复到e:oracleproduct10.2.0oradatatestsysaux01.dbf
正将数据文件00004恢复到e:oracleproduct10.2.0oradatatesttest.dbf
正将数据文件00005恢复到e:oracleproduct10.2.0oradatatesttest1.dbf
通道 ora_disk_1: 正在读取备份段 e:rmanatest_03i4uuq5_1_1.bak
故障转移到上一个备份
创建数据文件 fno = 1 名称 = e:oracleproduct10.2.0oradatatestsystem01.dbf
rman-00571: ===========================================================
rman-00569: =============== error message stack follows ===============
rman-00571: ===========================================================
rman-03002: restore 命令 (在 12/14/2006 19:07:05 上) 失败
ora-01180: 无法创建数据文件 1
ora-01110: 数据文件 1: 'e:oracleproduct10.2.0oradatatestsystem01.dbf'
update bp set handle='e:rmanbtest_04i4uurj_1_1.bak'
where handle='e:rmanatest_04i4uurj_1_1.bak';
update bp set handle='e:rmanbtest_03i4uuq5_1_1.bak'
where handle='e:rmanatest_03i4uuq5_1_1.bak';
rman> restore database;
启动 restore 于 14-12月-06
使用通道 ora_disk_1
通道 ora_disk_1: 正在开始恢复数据文件备份集
通道 ora_disk_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到e:oracleproduct10.2.0oradatatestsystem01.dbf
正将数据文件00002恢复到e:oracleproduct10.2.0oradatatestundotbs01.dbf
正将数据文件00003恢复到e:oracleproduct10.2.0oradatatestsysaux01.dbf
正将数据文件00004恢复到e:oracleproduct10.2.0oradatatesttest.dbf
正将数据文件00005恢复到e:oracleproduct10.2.0oradatatesttest1.dbf
通道 ora_disk_1: 正在读取备份段 e:rmanbtest_03i4uuq5_1_1.bak
通道 ora_disk_1: 已恢复备份段 1
段句柄 = e:rmanbtest_03i4uuq5_1_1.bak 标记 = tag20061214t190436
通道 ora_disk_1: 恢复完成, 用时: 00:00:45
完成 restore 于 14-12月-06
rman> recover database;
启动 recover 于 14-12月-06
使用通道 ora_disk_1
正在开始介质的恢复
介质恢复完成, 用时: 00:00:03
完成 recover 于 14-12月-06
rman> alter database open;
数据库已打开
rman>
闽公网安备 35060202000074号