本文概述了升级到 Oracle 数据库 21c 的过程,并提供了指向更详细文章的链接。
目录
警告
Oracle 21c 是一个创新版本,因此它可能不适合大多数生产系统。在将 Oracle 21c 用于任何真实的事情之前,请阅读此内容。
即使您不打算升级到 21c,仍然值得练习升级过程,因为对于下一个长期版本 Oracle 23c,这些过程也是一样的。
升级可能非常复杂,因此您必须始终阅读升级手册,并在考虑升级生产环境之前进行彻底的测试。
支持的版本
支持直接升级到 Oracle 21c 的版本有限。
19c, 18c, 12.2
您会注意到这些都来自 12.2 代码分支,因为 18c 是 12.2.0.2 而 19c 是 12.2.0.3。此站点上的所有 21c 升级文章都假定您从支持的版本开始直接升级。
如果您当前使用的版本不支持直接升级,则在最终升级到 Oracle 21c 之前,您必须进行额外升级以获得支持的版本。下面显示了一些示例路径,但根据补丁版本有很多排列。
11.2.0.4 -> 19c -> 21c10.2 -> 12.1 -> 19c -> 21c
所有中间升级都应按照与该版本相关的说明执行。
如果您已经落后于升级,那么将现有数据库升级到当前的长期版本 (19c) 是值得的,这样可以更轻松地升级到下一个长期版本 (23c)。
取消支持非 CDB 架构
Oracle 21c 中不再支持非 CDB 架构,因此我们无法运行 21c 的非 CDB 实例。这也意味着在将实例转换为 21c 多租户的过程中,我们无法通过 21c 的非 CDB 版本。这对我们升级到 Oracle 21c 的方法产生了深远的影响,您将在后面看到。每个升级方案都以 CDB 和 PDB 结束。
对非 CDB 架构的取消支持可能意味着您习惯的某些升级方案不再可能。在你必须做一些真正的事情之前,练习新的变化是值得的。
自动升级
对于以前的升级,您可能在执行升级之前使用了“preupgrade.jar”工具来检查兼容性问题。“preupgrade.jar”工具为许多问题创建自动修复脚本,并在升级前警告需要手动干预的地方。
从 Oracle 21c 开始,此工具已替换为“autoupgrade.jar”工具。该工具的使用方式与“preupgrade.jar”工具相同,但它可以做更多的事情。除了处理 pre/post fixup 脚本之外,它还可以管理实例状态并在 home 之间复制配置文件,因此单个部署阶段可以执行将您从起点带到终点所需的所有工作。值得花一些时间来玩这个实用程序,以了解它的功能。
本站的文章都比较简单,处理单台服务器上的单实例升级,但AutoUpgrade工具也可以用于Data Guard和Real Application Cluster(RAC)升级,以及迁移到新服务器。查看文档了解详细信息。
升级工具
有多种工具可用于升级数据库。
- AutoUpgrade :这应该是您的主要工具。见上文。
- 数据库升级助手 (DBUA) :用于升级数据库的 GUI 工具。我已经很久没有使用 GUI 工具进行升级了,所以我忽略了这个工具。各有千秋。
- 导出/导入:这是小型数据库的简单解决方案。它还具有独立于版本和平台的优势,因此在操作系统之间迁移时非常有用。对于大型数据库,它会非常慢。
- 可传输数据库:可传输表空间的一种变体,在其中传输整个数据库。
每一种都有其优点和缺点,但我希望 AutoUpgrade 工具是大多数情况下的最佳选择。
升级场景示例
有许多可能的升级方案,但这里有一些链接文章中的示例。
场景 1:我们有一个多租户数据库,在支持直接升级到 21c 的数据库版本上有一个或多个 PDB。我们决定一步升级 CDB 和所有 PDB。
场景 2:我们有一个多租户数据库,在支持直接升级到 21c 的数据库版本上有一个或多个 PDB。我们决定升级一个或多个 PDB,方法是将它们从旧容器中拔出,然后将它们插入新的 Oracle 21c 容器中以升级它们。
场景 3:我们在支持直接升级到 21c 的版本上有一个非 CDB 数据库。我们将非 CDB 数据库转换为 Oracle 21c CDB 中的可插拔数据库 (PDB)。在 Oracle 21c 中打开新的 PDB 会自动触发从非 CDB 数据库到 PDB 的升级和转换。我们使用 AutoUpgrade 工具来处理升级。
场景 4:我们有一个支持直接升级到 21c 的版本的非 CDB 数据库。我们将非 CDB 数据库转换为 Oracle 21c CDB 中的可插拔数据库 (PDB)。在 Oracle 21c 中打开新的 PDB 会自动触发从非 CDB 数据库到 PDB 的升级和转换。我们使用手动拔出/插入方法来处理升级。
只读 Oracle 主目录
默认情况下,Oracle 21c 使用只读 Oracle 主目录。此功能是在 Oracle 18c 中引入的,您可以在此处阅读相关信息。
有关更多信息,请参阅:
希望这会有所帮助。
文章来源:https://oracle-base.com/articles/21c/oracle-21c-upgrade-overview




