sss
第一部分:數據庫升級
1. 安裝19C軟體
1.1 創建安裝目錄
[root@dzrtest ~]# mkdir –p /oracle/12203
[root@dzrtest ~]# chown –R oracle:dba /oracle/12203/
1.2 暫時修改環境變量
export ORACLE_HOME=$ORACLE_BASE/12203
1.3 解压缩安裝包。
與11g不同,19c安裝包必須解壓縮到ORACLE_HOME下面。
[oracle@dzrtest 12203]$ unzip LINUX.X64_193000_db_home.zip
[oracle@dzrtest 12203]$ export DISPLAY=10.251.134.116:0.0
1.4 安裝oracle軟體
1.4.1 根據提示Set Up Software Only
1.4.2 選擇單實例安裝
1.4.3 企業版安裝
1.4.4 設置Oracle base
1.4.5 點擊YES
1.4.6
1.4.7点击next
1.4.8 進入到check界面,根據提示安裝缺少的包
Yum安裝以下兩個包:
[root@dzrtest ~]# yum install smartmon*
*
check agin
選擇YES
這裡運行一個腳本即可
連續Y,如下圖
點擊Close
2. ORACLE升級19C數據庫
2.1 升級前準備
註:升级前需要提前做准备工作,否則直接执行dbua会出现下面报错:
[oracle@dzrtest 12203]$ 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用户下是否存在不可忽略的失效对象。
按照提示進行下面準備工作:
腳本可以在19C的$ORACLE_HOME/rdbms/admin/中找到,在11G數據庫執行(需修改成11g環境變量),按照執行結果依次執行即可。
1. 解壓升級包
export ORACLE_HOME=$ORACLE_BASE/11204
[oracle@dzrtest bin]$ cd /oracle/11204/jdk/bin
[oracle@dzrtest bin]$ java -jar /oracle/12203/rdbms/admin/preupgrade.jar—实际解压到源数据库
2. 解壓後生成preupgrade.log的升級步驟
接下来根据生成的log指導,開始進行升級前準備:
preupgrade.log里记录的是检查的详细信息,有不满足的对象可以通过查看该文件获取。根据提示:在升级前要执行preupgrade_fixups.sql脚本来修复不符合要求的对象。升级后需要执行postupgrade_fixups.sql脚本来修复。
首先執行下修復腳本,根據結果查漏補缺:
SQL> @/oracle/cfgtoollogs/dzrtest/preupgrade/preupgrade_fixups.sql
1. 移除EM
將emremove.sql從目標端19C下面copy到11G下面
[root@localhost admin]# cd /oracle/12203/rdbms/admin
[root@localhost admin]# cp emremove.sql /oracle/11204/rdbms/admin/
[oracle@dr_19ctest admin]$ cd /oracle/11204/rdbms/admin/
SQL> SET ECHO ON; --显示当前正在执行的语句
SQL> SET SERVEROUTPUT ON; --设置允许显示输出类似dbms_output
SQL> @emremove.sql
……
2.0 升级APEX
Oracle Application Express 是一个适用于 Oracle 数据库的快速 Web 应用程序开发工具。只需要对数据库操作或SQL语言熟悉就可以进行基于WEB 的信息系统的开发。它以Inte rne t 作为应用平台, 客户端易于维护; 使用它开发的基于数据库的WEB 站点, 更加易于管理且更加安全。
从18c开始,Oracle不会自动更新APEX组件,需要手动更新。The database contains APEX version 3.2.1.00.12. Upgrade APEX to at least version 18.2.0.00.12.
下載網址:
https://www.oracle.com/tools/downloads/apex-all-archives-downloads.html
這裡選擇升級到18.2.0.00.12.版本
2.1 解壓縮apex升級包
2.2 升級apex
切换到解压的apex所在的目录下再以sysdba身份登录数据库,执行脚本升级
[oracle@dzr_test ~]$ cd /Data/software/apex
[oracle@dzr_test apex]$ sqlplus / as sysdba
SQL> @apexins.sql SYSAUX SYSAUX TEMP /i/
升級部分截圖如下:
……
2.2.1檢查APEX版本
由于升级 APEX 造成有无效对象,但是不是 SYS 、 SYSTEM 用户下的无效对象。可以忽略
SQL> COL COMP_NAME FORMAT A40
SQL> COL STATUS FORMAT A12
SQL> SELECT COMP_NAME, STATUS, VERSION FROM DBA_REGISTRY WHERE COMP_NAME='Oracle Application Express';
3. 移除OLAP Catalog
从 Oracle Database 12c 开始,OLAP Catalog (OLAP AMD) 不再支持,可以