ORACLE10G非归档模式下RMAN异机迁库

database

环境信息:

源库

目标库

操作系统

WIN7

WIN SVR 2012 R2

IP

x.x.x.216

x.x.x.112

数据库版本

10.2.0.4.0 - 64bi

10.2.0.4.0 - 64bi

存储方式

单实例

单实例

ORACLE_HOME

D:oracleproduct10.2.0db_1

D:oracleproduct10.2.0db_1

ORACLE_SID

ORCL

ORCL

RMAN恢复思路步骤:

  • 初始化数据库,安装相同环境;
  • 恢复参数文件;
  • 恢复控制文件;
  • 启动数据库到MOUNT状态,利用控制文件进行数据恢复;
  • restore database;
  • alter database open ressetlogs;
  • 验证结果

    具体恢复步骤:

  1. 在源库上登录RMAN控制台并且进行切换日志组,触发检查点,关闭数据库,重启动数据库至mount模式。

rman target /

sql'alter system switch logfile';

sql'alter system checkpoint';

shutdown immediate;

startup mount;

  1. 另起1个命令窗口,登录sqlplus,查询DBID并且记录下该值后关闭该命令窗口。

sqlplus / as sysdba

select dbid from v$database;

  1. 对源库进行全备份,并且记录该备份路径。

run{

allocate channel d1 type disk;

allocate channel d2 type disk;

backup as compressed backupset database;

release channel d1;

release channel d2;

report obsolete;

crosscheck backup;

delete noprompt expired backup;

delete noprompt obsolete;

}

  1. 对源库进行参数文件、控制文件的备份,并且记录该备份路径。

backup spfile;

backup current controlfile;

  1. 在目标系统中安装相同版本的ORACLE数据库,并且将DB_HOME与DB_SID设置与源库中一样。

  2. 安装完毕后,将上述所备份的全库备份文件,参数文件备份,控制文件备份拷贝至目标库中相同的系统路径中
  3. 在目标库中D:oracleproduct10.2.0db_1database新建一个空白文件,文件名称为FAKESPFILEORCL.ORA,并且将下方内容复制进文件中

db_name=ORCL

java_pool_size=4194304

large_pool_size=4194304

shared_pool_size=96468992

  1. 如果目标库中未shutdown则先shutdown,并且以新建的参数文件进行nomount启动数据库

startup pfile='D:oracleproduct10.2.0db_1databaseFAKESPFILEORCL.ORA' nomount;

  1. 在RMAN下,执行命令 SET DBID=1526707455(源库DBID);

set dbid=1526707455;

  1. 在目标库中进行参数文件恢复

restore spfile from 'D:oracleproduct10.2.0flash_recovery_areaORCLBACKUPSET2019_01_30O1_MF_NNSNF_TAG20190130T171134_G52TL81Y_.BKP';

  1. 关闭数据库并且以还原后的参数文件进行nomount启动

shutdown immediate;

startup nomount;

  1. 在目标库中进行控制文件恢复

restore controlfile from 'D:oracleproduct10.2.0flash_recovery_areaORCLBACKUPSET2019_01_30O1_MF_NCNNF_TAG20190130T171148_G52TLNS2_.BKP';

  1. 关闭数据库并且以mount启动

shutdown immediate;

startup mount;

  1. (可选操作)修改控制文件中记录的数据文件路径(如果源系统中存在数据库文件在F盘而目标系统不存在F盘则有必要进行此步操作),并且启动恢复

    (或者使用windows虚拟盘符)

    !请确保目标系统中存在数据文件存放的路径文件夹!

report schema;

run{

set newname for datafile 8 to 'D:ORACLEDATA1INFO_LOB';

restore database;

switch datafile all;

}

  • 此时数据库恢复完成

  1. 如果不需要修改路径则直接restore database;即可

    !请确保目标系统中存在数据文件存放的路径文件夹!

  2. 清除重做日志打开数据库

alter database open resetlogs;

  1. 验证数据库(验证源数据库中的数据是否到目标数据库中)

  2. 结束

ps:

  1. 其他参考地址:

    http://blog.51cto.com/jiujian/1165766

    http://blog.51cto.com/pimg2005/1920337

    https://blog.csdn.net/hzcyhujw/article/details/79421613

    https://docs.oracle.com/cd/B19306_01/backup.102/b14192/recov004.htm#sthref588

  2. win系统迁移linux与上述步骤相似,不过需要在参数文件还原后重新修改控制文件的具体路径
  3. 监控执行的进度

select sid,SERIAL# ,CONTEXT,SOFAR,TOTALWORK,round(SOFAR/TOTALWORK*100,2) "_%" from v$session_longops where OPNAME like 'RMAN%' and SOFAR<>TOTALWORK and TOTALWORK<>0;

以上是 ORACLE10G非归档模式下RMAN异机迁库 的全部内容, 来源链接: utcz.com/z/531964.html

回到顶部