您好,登录后才能下订单哦!
本篇内容介绍了“使用DBUA升级Oracle11.2.0.4到Oracle 19C的问题有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
简单记录一下升级过程中的坑:
需求:把ORACLE 11.2.0.4库迁移到新机器并升级到19C。
前期工作:
在新机器上安装11g,目录为/u01/app/oracle/product/11.2.0/home_1
19C安装在/u01/app/oracle/product/19.3.0/home_1
在老服务器上RMAN全库备份出来,备份目录NFS共享给新服务器,在新服务器上挂载上共享目录,完成恢复。11G正常打开库没有问题。
接着就是对要升级的库做5个准备工作
1、清除OLAP Catalog:$ORACLE_HOME/olap/admin/catnoamd.sql
2、清除apex:$ORACLE_HOME/apex/apxremov.sql
3、删除11G的DB control 需要使用19C的$ORACLE_HOME/rdbms/admin/emremove.sql
4、清空回收站
5、执行utlrp.sql重新编译
检查是否有失效的对象,为了保险起见,失效的对象我都删除了。
一、第一个坑:
设置/etc/oratab orcl:/u01/app/oracle/product/19.3.0/home_1:N
就是这个设置,掉进了第一个坑。
使用19C DBUA升级,开始执行过程时,本应该先用11G启动库,结果19C启动了11G的库,启动到升级模式,然后就出错了。然后再改回用11G启动,就报control file version 19.0.0.0.0 incompatible with ORACLE version 11.2.0.4.再启动不了了,就此升级失败,只好把库删了,重新来一次恢复操作,从头开始做一遍。
二、第二个坑
DBUA过程中让选择升级失败的恢复模式,我选择了使用flashback 创建恢复点。
结果DBUA升级过程中,发现卡在那一直不动,打开后台看告警alert日志,发现报db recovery 目录满,赶紧用alter system set 把db recovery 目录设置一个更大的值,之后的操作就在db recovery 目录不断的满,不断的扩db recovery 目录。本来以为用不了多久就能完的操作,花费了好几个小时。以后这种升级,再不能选用使用flashback 创建恢复点了。
三、第三个坑
走到post阶段的时候,失败,报以下错误
Unable to obtain current patch information due to error: 20001, ORA-20001: Latest xml inventory is not loaded into table
ORA-06512: at "SYS.DBMS_QOPATCH", line 2327
ORA-06512: at "SYS.DBMS_QOPATCH", line 854
ORA-06512: at "SYS.DBMS_QOPATCH", line 937
ORA-06510: PL/SQL: unhandled user-defined exception
ORA-06512: at "SYS.DBMS_QOPATCH", line 932
ORA-29913: error in executing ODCIEXTTABLEFETCH callout
ORA-29400: data cartridge error
KUP-04095: preprocessor command /u01/app/oracle/product/19.3.0home_1/QOpatch/qopiprep.bat encountered error "locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Can"
ORA-06512: at "SYS.DBMS_QOPATCH", line 919
ORA-06512: at "SYS.DBMS_QOPATCH", line 2286
ORA-06512: at "SYS.DBMS_QOPATCH", line 817
ORA-06512: at "SYS.DBMS_QOPATCH", line 2309
===========================================================
Dumping current patch information
===========================================================
Unable to obtain current patch information due to error: 20001
到MOS上耐心的搜索,找到了解决办法:
做这个设置:export LC_ALL=en_US.UTF-8
问题解决。
四、第四个坑
升级完后,居然库启动到mount就失败,报以下错误:
control file version 19.0.0.0.0 incompatible with ORACLE version 11.2.0.4.
仔细检查,发现启动参数里,compatible='11.2.0.4’,修改参数文件
把compatible='11.2.0.4’修改为compatible='19.3.0’。重新启动,启动成功。
检查组件状态:
select COMP_ID,VERSION, STATUS from dba_registry;
COMP_ID VERSION STATUS
------------------------------ ------------------------------ ------------------
CATALOG 19.0.0.0.0 VALID
CATPROC 19.0.0.0.0 VALID
JAVAVM 19.0.0.0.0 VALID
XML 19.0.0.0.0 VALID
CATJAVA 19.0.0.0.0 VALID
APS 19.0.0.0.0 VALID
RAC 19.0.0.0.0 OPTION OFF
OWM 19.0.0.0.0 VALID
CONTEXT 19.0.0.0.0 VALID
XDB 19.0.0.0.0 VALID
ORDIM 19.0.0.0.0 VALID
COMP_ID VERSION STATUS
------------------------------ ------------------------------ ------------------
SDO 19.0.0.0.0 VALID
XOQ 19.0.0.0.0 VALID
13 rows selected.
RAC组件不正常,好在是单机,不适用RAC,不做处理。
最后一步工作,把ORACLE_HOME从11G的目录修改为19C的目录。
“使用DBUA升级Oracle11.2.0.4到Oracle 19C的问题有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。