源端数据库版本 :Liunx&Oracle 11.2.0.4
目标端数据库版本 :Windows server12&Oracle 11.2.0.4
说明:客户需求搭建一套生产测试库,目标端是一台windows服务器环境
实例名称PROD(文中出现库名及表空间略作修改)
目标库安装数据库软件版本与源库保持一致
备份传至目标端
接下来进行恢复
以下操作步骤均在目标端操作
1.修改参数文件(源库参数文件拷贝至目标端修改),目标数据库启动到nomount状态
SQ>startup nomount;
2.恢复控制文件,启动到mount状态:
rman target /
rman>restore controlfile from 'C:\beifen\PROD_ctl_daily_58_1_1041677528%';
rman>alter database mount;
关闭数据库修改pfile参数文件
SQL>shutdown immediate
参数文件添加如下,源库路径转换为目标库路径
*.db_file_name_convert='/oradata/PROD','C:\app\Administrator\oradata\PROD'
*.log_file_name_convert='/oradata/PROD','C:\app\Administrator\oradata\PROD'
开启数据库到mount状态
SQL>startup mount;
exit
3.指定windows数据库恢复路径,设置数据文件路径转换
rman target /
rman>catalog start with 'C:\beifen';
识别到备份文件输入:YES
查看控制文件里是否有可用备份记录,找到catalog指定目录
rman>list backup of database;
由于liunx平台与windows平台数据文件路径不一致需要转换,接下来执行数据文件路径重新指定给控制文件(重点)
rman>run{
allocate channel ch0 type disk;
set newname for datafile 1 to 'C:\app\Administrator\oradata\PROD\system01.dbf';
set newname for datafile 2 to 'C:\app\Administrator\oradata\PROD\sysaux01.dbf';
set newname for datafile 3 to 'C:\app\Administrator\oradata\PROD\undotbs01.dbf';
set newname for datafile 4 to 'C:\app\Administrator\oradata\PROD\users01.dbf';
set newname for datafile 5 to 'C:\app\Administrator\oradata\PROD\index_other1.dbf';
set newname for datafile 6 to 'C:\app\Administrator\oradata\PROD\data_lob1.dbf';
set newname for datafile 7 to 'C:\app\Administrator\oradata\PROD\PROD1.dbf';
set newname for datafile 8 to 'C:\app\Administrator\oradata\PROD\data_met1.dbf';
set newname for datafile 9 to 'C:\app\Administrator\oradata\PROD\PROD20211.dbf';
set newname for datafile 10 to 'C:\app\Administrator\oradata\PROD\data_user1.dbf';
set newname for datafile 11 to 'C:\app\Administrator\oradata\PROD\data_fin1.dbf';
set newname for datafile 12 to 'C:\app\Administrator\ora