oracle 11g 通过主机的RMAN备份,测试库异机恢复数据库,rman恢复时报错
更新时间: 2022-08-08 09:23
主机SID:orcl
测试库SID:test
主库RMAN备份在本地
通过scp把参数文件,控制文件,数据文件,归档文件传到测试库相同目录
测试库启动到nomunt状态
rman target /
先恢复控制文件:
rman>restore controlfile from 'scp传过来的控制文件路径';
测试库启动到mount状态:
rman>alter database mount;
结果报错识别不到控制文件中orcl实例
反应过来测试库的SID时test,主库的SID是orcl,不同步,没法恢复
进入sql,create pfile=‘/home/oracle/initorcl.ora' from spfile; 创建一个pfile
修改initorcl.ora这个pfile文件,创建需要的目录
再次使用这个pfile文件打开数据库,
startup nomount from pfile=’/home/oracle/initorcl.ora';
再次恢复控制文件:
rman>restore controlfile from 'scp传过来的控制文件路径';
启动到mount状态:
rman>alter database mount;
成功
最后通过rman恢复数据库,指定到/u01/oradata/emr/:
rman>
run{
allocate channel c1 device type disk;
allocate channel c2 device type disk;
allocate channel c3 device type disk;
allocate channel c4 device type disk;
set newname for database to '/u01/oradata/emr/%b';
restore database;
switch datafile all;
switch tempfile all;
recover database;
}