使用RMAN备份将win32 oracle11.1迁移升级到win64 oracle11.2

任            务:将win32平台下的oracle11.1移植迁移到win64平台下,并将数据库版本升级到11.2
源   
数据库source:win32 oracle 11.1.0.7.0 Windows Server 2008 x86

目标数据库target: win64 oracle 11.2.0.4.0 Windwos Server 2008 R2 x86_64

操作    步骤:
1 以sysdba身份在source库上执行从target 11.2.0.4.0上拷贝的utlu112i.sql,处理检查不通过的条目;
2 在source库上执行RMAN全库备份;
3 将source上的备份及参数文件pfile拷贝到target库相应位置:
 拷贝到相同目录,如果是不同目录亦可,但需手动重新注册备份文件,如:
RMAN>crosscheck backup;
RMAN>delete expired backup;--先删除旧打backup记录
RMAN>catalog start with 'F:\rmanbackup'; --将整个新的目录注册到rman catalog;
RMAN>catalog backuppiece 'F:\rmanbackup\bak_1.bak', 'F:\rmanbackup\bak_1.bak';--一个一个将新位置的备份集注册;
4 将备份restore到target数据库:
>oradim -new -sid fabniu
>sqlplus / as sysdba
SQL>create spfile from pfile='E:\rmanbackup\pfile.ora';
如果target数据库控制文件等位置与source不同,需手动修改pfile.ora文件,再自行上述创建spfile的命令
SQL>startup nomount
>rman target/
RMAN>restore controlfile from 'F:\rmanbackup\controlfilebackXXXX.bak'
RMAN>set dbid=1908692810;
RMAN>alter database mount;
RMAN>run{
set newname for datafile 00001 to 'E:\APP\ADMINISTRATOR\ORADATA\CHANGKAN\SYSTEM01.DBF';
set newname for datafile 00002 to 'E:\APP\ADMINISTRATOR\ORADATA\CHANGKAN\SYSAUX01.DBF';
set newname for datafile 00004 to 'E:\APP\ADMINISTRATOR\ORADATA\CHANGKAN\USERS01.DBF';
set newname for datafile 00005 to 'E:\APP\ADMINISTRATOR\ORADATA\CHANGKAN\SYSTEM02.DBF';
set newname for datafile 00006 to 'E:\APP\ADMINISTRATOR\ORADATA\CHANGKAN\SYSAUX02.DBF';
.
.
.
restore database;
switch datafile all;
}
5 Recover target数据库
RMAN>run{
set until sequence 2745;
recover database;
}
6 以resetlogs upgrade模式打开target数据库
SQL>alter database open resetlogs upgrade;
SQL>alter tablespace temp add tempfile '.....dbf' size 100m reuse autoextend on next 32m maxsize 1024m;
SQL>alter database add logfile group 4 '....log' size 100m;
SQL>alter database add logfile group 5 '....log' size 100m;
SQL>alter database add logfile group 6 '....log' size 100m;
多加几个REDO日志组,后续的升级过程日志切换异常频繁和迅速
7 SQL>@?/rdbms/admin/catupgrad.sql --相当耗时,执行几个小时很正常
8 SQL>@?/rdbms/admin/utlu112S.sql --不需在upgrd模式下,显示摘要
9 SQL>@?/rdbms/admin/catuppst.sql --迁移baseline
10 检查升级失效的对象
SQL>select count(*) from dba_invalid_objects;
SQL>select distinct object_name from dba_invalid_objects;
11 重新编译无效对象
SQL>@?/rdbms/admin/utlrp.sql
12 检查各组件状态
SQL>col comp_name for a40
SQL>set wrap off
SQL>select comp_name,version,status from dba_registry;
13 处理升级后Invalid组件和未成功升级到11.2的组件
oracle database java packages invalid 11.1.0.7.0--失效且未成功升级到11.2.0.4.0
JServer java virtual machine valid 11.1.0.7.0--未成功升级到11.2.0.4.0
OWB(Oracle Warehouse Builder) valid 11.0.7.0--未成功升级到11.2.0.4.0
14 尝试解决第一二个问题(java和jvm):
SQL>@?/rdbms/admin/catalog.sql
SQL>@?/rdbms/admin/catproc.sql
SQL>@?/rdbms/admin/utlrp.sql
未能解决
使用如下方法==>uninstall the current installation of JVM
startup mount
alter system set "_system_trig_enabled"=false scope=memory;
alter system enable restricted session;
alter dtabase open
@>/rdbms/admin/catnojav.sql
@?/xdk/admin/rmxml.sql
@?/javavm/install/rmjvm.sql
truncate table java$jvm$status
==>restart the database install the jvm
startup mount
alter sysem set "_system_trig_enabled"=false scope=memory;
alter database open
@?/javavm/install/initjvm.sql
@?/xdk/admin/initxml.sql
@?/xdk/admin/xmlja.sql
@?/rdbms/admin/catjava.sql
shutdown immediate
==>start the database and resolve any invalid objects
@?/rdbms/admin/utlrp.sql
select comp_name_version,status from dba_registry;
发现已经解决第一二个问题,但由又出现一个新问题
oracle multimedia invalid
15 解决oracle multimedia invalid问题
set serveroutput on
execute sys.validate_ordim;
@?/ord/admin/ordinst SYSAUX SYSAUX
@?/ord/im/admin/catim
重新编译无效对象,重启数据库,解决
16 解决OWB问题
@?/owb/UnifiledRepos/clean_owbsys
@?/owb/UnifiledRepos/cat_owb.sql USERS
@?/owb/UnifiedRepos/reset_owbcc_home.sql E:\app\Administrator\product\11.2.0\dbhome_1\owb
select comp_name,version,status from dba_resgistry;
解决

至此,迁移升级过程顺利完成。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25406498/viewspace-1167240/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25406498/viewspace-1167240/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值