升级数据库

本文介绍了使用控制台和 API 升级数据库系统中的数据库的过程。

有关 Oracle Database 发行版和软件支持时间轴,请参见 My Oracle Support 门户中的 Release Schedule of Current Database Releases (Doc ID 742060.1) 。

必需的 IAM 策略

要使用 Oracle Cloud Infrastructure,必须在策略中由管理员为您授予安全访问权限。无论您是将控制台还是 REST API 与 SDK、CLI 还是其他工具结合使用,都需要进行此访问。如果您收到一条您无权或未经授权的消息,请向管理员核实您具有的访问权限类型以及要使用的区间。

对于管理员:让数据库管理员管理 Oracle Cloud 数据库系统中的策略允许指定的组使用数据库和相关数据库资源执行所有操作。

如果您不熟悉策略,请参阅策略入门和常见策略。如果要更深入地了解数据库的写入策略,请参阅数据库服务的详细信息。

先决条件

查看在数据库系统中升级 Oracle Database 的以下先决条件。

有关详细信息,请参阅:

关于升级数据库

查看有关数据库软件版本升级的以下信息。

升级具有 Data Guard 关联的数据库

对于具有 Data Guard 关联的数据库,必须始终先升级备用数据库,然后再升级主数据库。控制台中提供了使用控制台创建的 Data Guard 关联的升级选项。但是,如果您的数据库没有 Data Guard 关联,但手动配置为主数据库或备用数据库,则以下内容适用于升级此类数据库。

成功升级主数据库和备用数据库后,执行以下操作。

  1. 对于数据库版本 11.2 和 12.1,请启用升级之前禁用的 Data Guard 配置。
  2. 检查备用数据库的打开模式。
  3. 删除在备用数据库上创建的 GRP。

数据库服务如何执行数据库升级操作

在数据库升级过程中,将自动执行以下步骤:

回退失败的数据库升级

注:回退操作仅适用于 Oracle Database Enterprise Editions。

如果数据库升级未成功完成,则可以选择执行回退。在执行不成功的数据库升级操作后,数据库详细信息页上显示的标题消息中提供了回退选项。

在开始回退之前,请查看以下信息。

对于 Data Guard 关联中的数据库,必须按照以下步骤执行回退。

注:必须始终先回退主数据库,然后再回退备用数据库。

通常,使用控制台中的回退选项回退数据库时,数据库服务会自动执行下列步骤。

  1. 执行闪回。
  2. 更改数据库主目录。
  3. 删除 GRP。

只能使用 CLI 回退成功的备用数据库升级。

有关使用控制台执行回退的步骤的详细信息,请参阅回退失败的数据库升级。

数据库升级完成后

成功升级后,请注意以下事项:

管理保证的还原点

列出保证还原点

可以使用以下语句列出使用 V$RESTORE_POINT 视图的所有 GRP。

SELECT NAME FROM V$RESTORE_POINT WHERE GUARANTEE_FLASHBACK_DATABASE='YES';

有关详细信息,请参阅 Oracle Database Backup and Recovery User’s Guide 中的 Listing Restore Points Using the V$RESTORE_POINT view 。

丢弃保证还原点

可以使用以下语句删除使用 DROP RESTORE POINT 语句的 GRP。

DROP RESTORE POINT <grp name>;

其中,grp name 是必须删除的 GRP 的名称。

有关详细信息,请参阅 Oracle Database Backup and Recovery User’s Guide 中的 Dropping Restore Points 。

升级数据库

使用 OCI 控制台,执行以下步骤将数据库从较旧版本升级到较新的主要版本:

  1. 在数据库系统列表页上,选择包含要使用的数据库的数据库系统。如果需要查找列表页或数据库系统的帮助,请参阅列出数据库系统。
  2. 在数据库选项卡上,选择要使用的数据库。
  3. 在数据库详细信息页上,选择更新选项卡以查看数据库的可用升级列表。

    默认情况下,最新批准的版本更新可用。您还可以在确认显示的消息后选择前两个版本更新(N-1 或 N-2)之一。要使用早于 N-2 的版本更新,必须提交服务请求。

  4. 从您感兴趣的升级的操作菜单中,选择以下操作之一:
    • 查看详细信息:查看有关此升级的详细信息。
    • Precheck :检查是否有任何先决条件,以确保可以成功应用升级。
    • 应用更新:应用所选升级。Oracle 建议您在应用升级之前对升级运行预检查操作。

在列表中, State 显示操作的状态。应用升级时,状态将显示为升级。数据库的状态还显示为升级。对数据库及其资源的生命周期操作可能暂时不可用。如果升级成功完成,状态将更改为 Applied ,数据库的状态将更改为 Available 。

查看数据库升级历史记录

执行以下步骤,使用 OCI 控制台查看数据库的升级历史记录:

  1. 在数据库系统列表页上,选择包含要使用的数据库的数据库系统。如果需要查找列表页或数据库系统的帮助,请参阅列出数据库系统。
  2. 在数据库选项卡上,选择要使用的数据库。
  3. 在详细信息页上,选择更新历史记录选项卡以查看该数据库的更新和升级操作的历史记录。

回退失败的数据库升级

先决条件

过程

使用 OCI 控制台执行以下步骤以将失败的数据库升级回退到以前的 Oracle Database 版本:

  1. 在数据库系统列表页上,选择包含要使用的数据库的数据库系统。如果需要查找列表页或数据库系统的帮助,请参阅列出数据库系统。
  2. 在数据库选项卡上,选择要使用的数据库。
  3. 升级失败时,具有回退按钮的标题将显示在数据库详细信息页面的顶部。
  4. 选择回滚并确认。

将非容器数据库转换为 Oracle Database 19c PDB

本主题适用于从 Oracle Database 11。2 升级到 Oracle Database 19c 的数据库。在转换过程中,将创建一个新的容器数据库 (Container Database,CDB),用于存放通过转换非 CDB 创建的可插入数据库 (Pluggable Database,PDB)。要将非容器数据库转换为使用更高版本的 Oracle Database 19c 的 PDB,请按照本主题中的步骤操作,然后将生成的 19c 数据库升级到更高版本的软件版本,如“升级数据库”中所述。

使用控制台将非 CDB 转换为 PDB

  1. 在数据库系统列表页上,选择包含要使用的数据库的数据库系统。如果需要查找列表页或数据库系统的帮助,请参阅列出数据库系统。
  2. 在数据库选项卡上,选择要使用的数据库。
  3. 在数据库详细信息页的数据库信息选项卡上,查看数据库体系结构字段以确认数据库是非容器数据库。
  4. 在数据库详细信息页上,从操作菜单中选择转换为 PDB 。
  5. 在将非 CDB 数据库转换为可插入数据库面板中,在容器数据库详细信息部分中提供以下信息:
    • 容器数据库名称:为将保存转换的 PDB 的新 CDB 提供名称。
    • 密码:为新 CDB 提供密码。
    • 确认密码:重新输入 CDB 密码。
    • 使用 TDE wallet 的管理员密码:如果要为 TDE wallet 设置单独的密码,请取消选中此选项。取消选中该选项后,将显示以下字段:
      • 输入 TDE wallet 密码:为新 CDB 提供 TDE wallet 密码。
      • 确认 TDE wallet 密码:重新输入 TDE wallet 密码。
  6. 在非容器数据库详细信息部分中,输入要转换的非 CDB 的现有 TDE wallet 密码。
  7. 选择 Precheck 以执行预检查,或者选择 Convert to PDB (如果已准备好转换数据库)。

    注:运行预检查后,您将返回到控制台中的数据库详细信息页。要启动转换操作,请再次执行本主题中的所有步骤,并在最终步骤中选择转换为 PDB 选项。

成功转换数据库后,控制台中的数据库详细信息页将在数据库体系结构字段中显示容器数据库。此字段位于数据库详细信息页的数据库信息选项卡中。

将非 CDB 转换为 PDB 的故障排除提示

如果转换操作未成功完成,则可以使用数据库 cli (dbcli) 命令行实用程序解决该问题。有关数据库 CLI 的更多信息,请参见《Oracle Database CLI Reference 》。

要进行故障排除,请执行以下操作:

  1. 按连接到数据库系统概览中所述登录到数据库系统。
  2. 使用 dbcli list-jobs 命令确定不成功的数据库转换操作的作业 ID 和状态。
  3. 使用 dbcli describe-job 命令可显示有关不成功的数据库转换操作的详细信息。

根据 dbcli describe-job 命令重新优化的信息,您可以尝试解决导致转换操作失败的问题。对于插入过程中发生的错误(将新 PDB 插入到新 CDB 时),请与 Oracle 技术支持联系,以获得在解决导致失败的问题后完成转换所需的帮助。

如果转换操作失败,控制台可能会在数据库系统中显示 2 个数据库,或仅显示一个已终止的数据库。数据库系统自我重置至多需要 2 小时。如果控制台不再显示 2 个数据库或一个已终止的数据库,您可以重试转换。如果数据库系统未重置自身并允许您重试,请与 Oracle 技术支持联系。