APEX升级
1、升级前准备
1.1、下载安装包
下载APEX22.1:https://www.oracle.com/tools/downloads/apex-downloads.html


下载ORDS:https://www.oracle.com/database/technologies/appdev/rest-data-services-downloads.html

1.2、APEX安装要求
可以在 Workspace主页或关于Oracle APEX页面上查看
APEX:产品工作版本号
ORDS:APEX_LISTENER_VERSION

1.3、上传安装包
2、升级
2.1、备份文件,并将新的apex解压
mv /u01/apex /u01/apex.bak unzip apex_22.1.zip -d /u01/
2.2、切换用户oracle,并执行升级
cd /u01/apex sqlplus / as sysdba alter session set container=ORCLPDB1; @apexins.sql SYSAUX SYSAUX TEMP /i/

2.3、复制图片
cd /u01/apex \cp -aRf images/* /var/lib/tomcat/webapps/i
2.4、安装中文包
cd /u01/apex/builder/zh-cn sqlplus / as sysdba alter session set container = orclpdb1; @load_zh-cn.sql
2.5、登录验证,如下提示,尝试清理浏览器缓存

3、升级ORDS
3.1、记录查看ORDS安装位置
java -jar ords.war configdir 2022-05-14T03:01:19.145Z INFO config.dir 值是 /u01/ords
3.2、卸载ORDS
[root@localhost ords]# su - oracle [oracle@localhost ~]$ sqlplus / as sysdba SQL> alter pluggable database ORCLPDB1 open; SQL> exit [oracle@localhost ~]$ exit [root@localhost ords]# cd /u01/ords [root@localhost ords]# java -jar ords.war uninstall 指定要使用的数据库连接类型。 输入相应编号:[1] 基本 [2] TNS [3] 定制 URL [1]: 输入数据库服务器的名称 [localhost]:apexjiaen.com 输入数据库监听端口 [1521]: 要指定数据库服务名称,请输入 1;要指定数据库 SID,请输入 2 [1]: 输入数据库服务名:ORCLPDB1 要验证 Oracle REST Data Services 方案,需要使用管理员权限登录。 输入管理员用户名:sys 输入SYS AS SYSDBA的数据库口令:sysoracle 确认口令:sysoracle 正在连接到数据库用户:SYS AS SYSDBA URL:jdbc:oracle:thin:@//apexjiaen.com:1521/ORCLPDB1 检索信息. 正在卸载 Oracle REST Data Services ... 日志文件已写入/root/ords_uninstall_core_2022-05-12_154329_00459.log 已完成 Oracle REST Data Services 的卸载。用时: 00:00:01.752
3.1、升级JDK 到11
rpm -ivh jdk-11.0.15_linux-x64_bin.rpm
3.2、安装ORDS
有两种方式,一种采用YUM源,一种官网下载包,后者只需要下载包后,解压到相应目录即可
3.2.1、YUM安装
3.2.1.1、创建ORDS YUM源
OL7 仓库:https://yum.oracle.com/repo/OracleLinux/OL7/oracle/software/x86_64/
OL8 仓库:https://yum.oracle.com/repo/OracleLinux/OL8/oracle/software/x86_64/
vim ords.repo # apex-ords.repo [ords] name=APEX-ORDS - Media baseurl=https://yum.oracle.com/repo/OracleLinux/OL7/oracle/software/x86_64/ gpgcheck=0 enabled=1
3.2.1.2、YUM安装
yum install ords
3.3、配置ORDS
方式1:解压后的,交互是升级,加载升级前的配置文件,服务运行命令:bin/ords serve
bin/ords --config /u01/ords/conf install -i --legacy-config /u01/ords.bak/ --log-folder /u01/ords/logs
方式2:yum安装后的独立部署模式运行,此次采用这种方式
[root@localhost ords]# ords --config /etc/ords/config install
ORDS:发行版 22.1 生产,发行日期 周日 5月 15 01:42:17 2022
版权所有 (c) 2010,2022,Oracle。
配置:
/etc/ords/config
配置文件夹 /etc/ords/config 不包含任何配置文件。
Oracle REST Data Services - 交互式安装
输入相应编号以选择安装类型
[1] 仅在数据库中安装或升级 ORDS
[2] 创建或更新数据库池并在数据库中安装/升级 ORDS
[3] 仅创建或更新数据库池
Choose [2]:
已创建文件夹 /etc/ords/config
输入相应编号以选择要使用的数据库连接类型
[1] 基本(主机名、端口、服务名称)
[2] TNS(TNS 别名、TNS 目录)
[3] 定制数据库 URL
Choose [1]:
输入数据库主机名 [localhost]: apexjiaen.com
输入数据库监听端口 [1521]:
输入数据库服务名 [ORCLCDB]: ORCLPDB1
提供具有管理员权限的数据库用户名。
输入管理员用户名: sys
输入SYS AS SYSDBA的数据库口令:
正在连接到数据库用户:SYS AS SYSDBA URL:jdbc:oracle:thin:@//apexjiaen.com:1521/ORCLPDB1
检索信息.
输入 ORDS_METADATA 和 ORDS_PUBLIC_USER 的默认表空间 [SYSAUX]:
输入 ORDS_METADATA 和 ORDS_PUBLIC_USER 的临时表空间 [TEMP]:
输入相应编号以选择要启用的其他功能:
[1] 数据库操作(启用所有功能)
[2] 启用 REST 的 SQL 和数据库 API
[3] 启用 REST 的 SQL
[4] 数据库 API
[5] 无
Choose [1]:
输入相应编号以在独立模式下配置和启动 ORDS
[1] 在独立模式下配置和启动 ORDS
[2] 跳过
Choose [1]:
输入 HTTP 端口 [8080]:
输入 APEX 静态资源位置: /u01/apex/images[root@localhost config]# mkdir /etc/ords/config/global/doc_root
配置启动项
[root@localhost config]# chmod +x /etc/rc.d/rc.local [root@localhost config]# chmod +x /etc/ords/config/ords.sh [root@localhost config]# cat /etc/ords/config/ords.sh #!/bin/bash cd /etc/ords/config/ && ords serve [root@localhost config]# echo "nohup /etc/ords/config/ords.sh &" >> /etc/rc.d/rc.local
3.4、遇到的问题
3.4.1、如提示:Disabling document root because the specified folder does not exist: /etc/ords/config/global/doc_root
则需要手动创建相应的文件夹
3.4.2、如提示:The pool named: |default|lo| is invalid and will be ignored: 名为 |default|lo| 的连接池的用户名或口令无效, 已失效或者帐户已被锁定
则需要检查数据库是否正确启动,切是否是PDB,同时监听也需要运行
4、验证
