使用DBUA把数据库从11g升级到19c的non-cdb简示(单实例版)

一、环境变量变化


当前环境 目标环境
数据库版本 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数据库及集群安装包,下载地址如下:

https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

解压下载的软件包:uzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME

(注:这点跟11g有所区别)


三、进入$ORACLE_HOME并执行DBUA


上图是执行了preupgrade脚本,显示的是当前目标库在升级前需要手动升级的部分,可以在执行DBUA之前先进行操作:

  1. 从 Oracle Database 12c 开始,OLAP Catalog (OLAP AMD) 不再支持,可以执行脚本$ORACLE_HOME/olap/admin/catnoamd.sql 来删除它。

  2. 原库是11g,需要跑apxremov.sql来移除APEX,因为从18c开始,不再随着数据库升级自动升级。(/oracle/app/oracle/product/11.2.0/db_1/apex/apxremov.sql)

  3. 删除DB control。emremove.sql脚本可以从目标库的路径下找到复制到原库的路径下执行,本例子中的路径是/u01/app/oracle/product/19.0.0/db_1/rdbms/admin/。如果当期有em在运行需要先停止,另外12c之前的版本在升级后有需要降级的话,需要使用emdwgrd 工具先备份 Database Control 的文件(本例子中没配置em先不做演示)

  4. 清空回收站

  5. 执行utlrp.sql脚本并检查sys/system用户下是否存在不可忽略的失效对象。

继续执行图形化升级:

这里可以进行各种升级配置,比如并行升级,重新编译失效对象,升级 timezone或者在升级前后执行某些脚本

 

这个是一些关于恢复的选项配置,比如创建还原点,创建备份等

这里可以选择使用并升级当前的监听或者新建一个监听

这一步是关于EM express的配置,也可以将数据库注册到EMCC

这是安装等过程中常见的汇总界面

升级过程的图片(暂缺,后补)

下面是升级结果:


最后再检查一下是否有异常的失效对象,并运行utlrp.sql脚本进行编译。


至此,使用DBUCA进行11g升级至non-cdb的19c就完成了。


请使用浏览器的分享功能分享到微信等