oracle rman恢复数据文件路径不一致
a.如果备份的数据库可以访问,那么执行执行生产转化脚本:
select 'set newname for datafile ' || file# || ' to ''' ||replace( name,'/old/data/path','/new/data/path' ) || ''';' from v$datafile;
b.如果备份的数据库不可以访问,可以trace控制文件内容:
alter database backup controlfile to trace;
在alert查看生成的trace文件路径和名称;
编辑恢复脚本:
vi recover.txt
run{
allocate channel c1 type sbt;
allocate channel c2 type sbt;
allocate channel c3 type sbt;
allocate channel c4 type sbt;
allocate channel c5 type sbt;
allocate channel c6 type sbt;
allocate channel c7 type sbt;
allocate channel c8 type sbt;
set newname for datafile 1 to '/s01/oracle/oradata/prod/system.156.952859152';
set newname for datafile 2 to '/s01/oracle/oradata/prod/sysaux.157.952859154';
set newname for datafile 3 to '/s01/oracle/oradata/prod/undotbs1.258.952859453';
set newname for datafile 4 to '/s01/oracle/oradata/prod/users.159.952855153';
set newname for datafile 5 to '/s01/oracle/oradata/prod/undotbs2.168.956859305';
set newname for datafile 6 to '/s01/oracle/oradata/prod/data.176.952859731';
set newname for datafile 7 to '/s01/oracle/oradata/prod/data.177.952857539';
set newname for datafile 8 to '/s01/oracle/oradata/prod/data.178.952850557';
restore database;
switch datafile all;
recover database;
release channel c1;
release channel c2;
release channel c3;
release channel c4;
release channel c5;
release channel c6;
release channel c7;
release channel c8;
}
放在后台恢复:
nohup rman target / @recover.txt log backup.log &
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341