Ubuntu 上升级 Oracle 的正确路径
先明确升级对象
- 若指的是 Oracle Database:升级路径以安装新版本软件、再用 AutoUpgrade 或 DBUA 执行数据库升级为核心,强烈推荐 out-of-place(异机/新目录) 方式,避免就地升级带来的回滚复杂与停机拉长。自 21c 起 DBUA 已被 AutoUpgrade 取代;23ai 仅支持 多租户(CDB/PDB) 架构,非 CDB 需先转为 PDB 再升级。升级前务必完成 兼容性/认证、备份 与 回退方案 准备。
- 若指的是 Oracle Java(JDK/JRE):这不是数据库升级,而是 JDK 版本管理。Ubuntu 可通过 PPA 或 update-alternatives 安装与切换多个 Oracle JDK 版本,适合开发与运行环境切换。
Oracle Database 升级步骤(Ubuntu 通用思路)
- 规划与评估
- 在 My Oracle Support 查看目标版本的 认证与要求,并重点阅读 行为变更/弃用/不推荐特性;确认第三方应用对目标版本的支持情况。
- 制定 回退方案(如有效备份或还原点),并评估停机窗口与回滚路径。
- 准备新 Oracle Home
- 在新目录安装目标版本(推荐 out-of-place),安装后立即应用最新的 Release Update(RU) 与 Monthly Recommended Patches(MRP),再开始数据库升级。
- 架构与兼容性处理
- 目标为 23ai 时,数据库必须是 CDB;若是 非 CDB,需先转换为 PDB 并插入到运行目标版本的 CDB 中。
- 执行升级
- 首选 AutoUpgrade(随数据库软件提供,但建议从 MOS 2485457.1 下载最新版)。典型流程:
- 初始化并分析:java -jar autoupgrade.jar -config <config_file> -mode analyze
- 修复问题后执行:java -jar autoupgrade.jar -config <config_file> -mode deploy
- 如必须使用图形化工具或旧版本场景,可选择 DBUA(在 21c 之前常用)。
- 升级后验证与收尾
- 执行必要的 字典/统计信息 维护与回归测试;确认应用连接、参数与特性使用符合新版本规范。
Oracle Java 升级步骤(若你要升级的是 JDK)
- 使用 PPA 安装与切换(示例为 Oracle JDK 8):
- 安装工具:sudo apt install -y software-properties-common
- 添加源并安装:sudo add-apt-repository ppa:webupd8team/java
- 安装 JDK:sudo apt install -y oracle-java8-installer
- 切换版本:sudo update-java-alternatives -s java-8-oracle
- 验证:java -version / javac -version
- 多版本并存与切换可用 update-alternatives --config java 完成;也可使用 SDKMan 管理多版本 JDK(含部分 Oracle JDK 版本)。
关键注意事项与常见问题
- 架构要求:23ai 仅支持 CDB/PDB;从 非 CDB 升级需先转为 PDB 再升级到目标版本。
- 升级方式:优先 out-of-place;保留旧 ORACLE_HOME 时,绝不要使用旧软件启动已升级的数据库,否则可能导致数据字典不一致与不可预期问题。
- 工具选择:自 21c 起使用 AutoUpgrade;DBUA 仍可在部分旧版本场景使用。
- 补丁策略:新 ORACLE_HOME 安装后应先打上最新 RU/MRP 再执行升级,降低风险与返工概率。
- 回退与保障:升级前准备 备份/还原点;在 OCI 控制台 中升级失败可一键回退(适用于 Enterprise Edition 且升级状态为 Failed 的场景)。