一、环境变量变化
当前环境
目标环境
数据库版本
11.2.0.4
19.3.0.0
ORACLE_HOME
/oracle/app/oracle/product/11.2.0/db_1
/u01/app/oracle/product/19.0.0/db_1
ORACLE_BASE
/oracle/app/oracle/
/u01/app/oracle/
二、下载软件包并解压
当前从英文版的OTN上可以下载到linux版的19.3数据库及集群安装包,下载地址如下:
解压下载的软件包:uzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME
(注:这点跟11g有所区别)
三、进入$ORACLE_HOME并执行DBUA
上图是执行了preupgrade脚本,显示的是当前目标库在升级前需要手动升级的部分,可以在执行DBUA之前先进行操作:
从 Oracle Database 12c 开始,OLAP Catalog (OLAP AMD) 不再支持,可以执行脚本$ORACLE_HOME/olap/admin/catnoamd.sql 来删除它。
原库是11g,需要跑apxremov.sql来移除APEX,因为从18c开始,不再随着数据库升级自动升级。(/oracle/app/oracle/product/11.2.0/db_1/apex/apxremov.sql)
删除DB control。emremove.sql脚本可以从目标库的路径下找到复制到原库的路径下执行,本例子中的路径是/u01/app/oracle/product/19.0.0/db_1/rdbms/admin/。如果当期有em在运行需要先停止,另外12c之前的版本在升级后有需要降级的话,需要使用emdwgrd 工具先备份 Database Control 的文件(本例子中没配置em先不做演示)
清空回收站
执行utlrp.sql脚本并检查sys/system用户下是否存在不可忽略的失效对象。
继续执行图形化升级:
这里可以进行各种升级配置,比如并行升级,重新编译失效对象,升级 timezone或者在升级前后执行某些脚本
这个是一些关于恢复的选项配置,比如创建还原点,创建备份等
这里可以选择使用并升级当前的监听或者新建一个监听
这一步是关于EM express的配置,也可以将数据库注册到EMCC
这是安装等过程中常见的汇总界面
升级过程的图片(暂缺,后补)
下面是升级结果:
最后再检查一下是否有异常的失效对象,并运行utlrp.sql脚本进行编译。
至此,使用DBUCA进行11g升级至non-cdb的19c就完成了。