且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

EBS R12克隆 - Oracle11.2.0.3 EBS数据库克隆(RMAN恢复) 1

更新时间:2022-09-10 15:26:36

1. 事先要修改目标库中初始参数中的db_name为源数据库名称,这里假设修改db_name为GERPB,其它参

数酌情修改(比如加快RMAN恢复)。

2. 恢复介质准备 。 
   将RMAN备份通过NAS挂载到目标数据库服务器上(或拷贝到本地),

3. 恢复控制文件。
 在目标数据库上恢复控制文件。
  rman  target / nocatalog  
  RMAN> startup nomount;
  RMAN> restore controlfile from '/gerpnas/rmanbak/fullbak_CF_c-3148051840-20130822-00';
   RMAN> alter database mount;

4.登陆源数据库获得数据文件路径信息。 
select name   from v$datafile;   
备注: RMAN备份在归档模式下一般是会alert system switch logfile,并备份归档日志,等同于
备份了online redo文件,非归档模式不能online rman backup,online redo对备份没有用。故RMAN
备份不备份online redo。也不备份tempfile。在下面的RMAN restore脚本中也不需要对这两类文件
做rename转换。

5. 编写restore datafile的脚本。
脚本restore.rman如下(一般在后台运行):

catalog start with '/gerpnas/rmanbak/';  
(备份集所在路径一定要用“/”结尾,不然找不到真实的路径)
run{
allocate channel c1 type disk; 
allocate channel c2 type disk; 
set newname for datafile  '/data/d08/gerpb/datafile/system.323.717426563'  to‘+DATA’;             
 …  (为节省篇幅,省略大部分数据文件) 
set newname for datafile '/data/d15/gerpb/datafile/appslx.265.743248917' to ‘+DATA’; 
restore database force; 
switch datafile all; 
}

后台运行命令:
$nohup  rman target /  cmdfile=/home/dgerp/restore.rman  log=/home/dgerp/rman.log &  
Restore完成后还需要进行recover。

$rman  target  /   
RMAN> recover database  ;  (recover最终都会以出错找不到归档日志结束)

本文转自ITPUB博客tolywang的博客,原文链接:EBS R12克隆 - Oracle11.2.0.3 EBS数据库克隆(RMAN恢复) 1,如需转载请自行联系原博主。