升级 Oracle 数据库引擎 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

升级 Oracle 数据库引擎

如果 Amazon RDS 支持新版本的 Oracle,您可以将数据库实例升级到新版本。有关在 Amazon RDS 上可用的 Oracle 版本的信息,请参阅 Oracle 数据库引擎发行说明

重要

RDS for Oracle Database 11g 已弃用。如果您有 Oracle Database 11g 快照,可以将其升级到更高版本。有关更多信息,请参阅 升级 Oracle 数据库快照

Oracle 数据库升级注意事项

在升级之前,请查看选项组、参数组和时区的含义。

选项组注意事项

如果您的数据库实例使用自定义选项组,Amazon RDS 有时会无法自动分配新的选项组。例如,在升级到新的主要版本时,会发生这种情况。在这种情况下,请在升级时指定新的选项组。我们建议您创建新的选项组,然后向该组添加与现有自定义选项组相同的选项。

有关更多信息,请参阅 创建选项组复制选项组

如果数据库实例使用包含 APEX 选项的自定义选项组,您有时可以减少升级用时。为此,请与数据库实例同时升级您的 APEX 版本。有关更多信息,请参阅“升级 APEX 版本”。

参数组注意事项

如果数据库实例使用自定义参数组,则有时 Amazon RDS 无法自动向数据库实例分配新的参数组。例如,在升级到新的主要版本时,会发生这种情况。在这种情况下,请确保在升级时指定一个新的参数组。我们建议您创建新参数组,然后配置您现有的自定义参数组中的那些参数。

有关更多信息,请参阅 创建数据库参数组复制数据库参数组

时区注意事项

您可以使用时区选项更改您的 Oracle 数据库实例使用的系统时区。例如,您可能需要更改数据库实例的时区,从而与本地环境或旧版应用程序兼容。时区选项在主机级别更改时区。Amazon RDS for Oracle 全年自动更新系统时区。有关更改系统时区的更多信息,请参阅 Oracle 时区

创建 Oracle 数据库实例时,数据库会自动设置数据库时区。数据库时区也称为夏令时 (DST) 时区。数据库时区不同于系统时区。

在 Oracle 数据库版本之间,补丁集或单个补丁可能包含新的 DST 版本。这些补丁反映不同时区区域的转换规则变化。例如,政府可能会更改 DST 生效的时间。对 DST 规则的更改可能会影响 TIMESTAMP WITH TIME ZONE 数据类型的现有数据。

如果升级 RDS for Oracle 数据库实例,Amazon RDS 不会自动升级数据库时区文件。要自动升级时区文件,您可以在引擎版本升级期间或之后与数据库实例关联的选项组中添加 TIMEZONE_FILE_AUTOUPGRADE 选项。有关更多信息,请参阅 Oracle 时区文件自动升级

或者,要手动升级数据库时区文件,请创建具有所需 DST 补丁的新 Oracle 数据库实例。但是,我们建议您使用 TIMEZONE_FILE_AUTOUPGRADE 选项来升级数据库时区文件。

升级时区文件后,将数据从您的当前实例迁移到新实例。您可以使用多种技术迁移数据,包括:

  • Amazon Database Migration Service

  • Oracle GoldenGate

  • Oracle Data Pump

  • 原始导出/导入(不再支持一般用途)

注意

使用 Oracle Data Pump 迁移数据时,当目标时区版本低于源时区版本时,此实用程序会引发错误 ORA-39405。

有关更多信息,请参阅 Oracle 文档中的 TIMESTAMP WITH TIMEZONE 限制

测试 Oracle 数据库升级

在将数据库实例上升级到主要版本前,应该彻底地测试数据库以及访问该数据库的所有应用程序,了解是否与新版本兼容。我们建议您使用以下过程。

测试主要版本升级

  1. 检查新版数据库引擎的 Oracle 升级文档以了解是否存在可能会影响数据库或应用程序的兼容性问题。有关更多信息,请参阅 Oracle 文档中的数据库升级指南

  2. 如果数据库实例使用自定义选项组,则创建与您正升级到的新版本兼容的新选项组。有关更多信息,请参阅“选项组注意事项”。

  3. 如果数据库实例使用自定义参数组,则创建与您正升级到的新版本兼容的新参数组。有关更多信息,请参阅“参数组注意事项”。

  4. 为要升级的数据库实例创建数据库快照。有关更多信息,请参阅“创建数据库快照”。

  5. 恢复数据库快照,以便创建一个新的测试数据库实例。有关更多信息,请参阅“从数据库快照还原”。

  6. 使用下面介绍的一种方法来修改此新测试数据库实例,以将其升级到新版本:

  7. 执行测试:

    • 对升级的数据库实例运行所需次数的质量保证测试以确保数据库和应用程序可正常使用新版本。

    • 实施任何必需的新测试,评估您在步骤 1 中发现的任何兼容性问题的影响。

    • 测试存储的所有过程、函数和触发器。

    • 将应用程序的测试版本指向所升级的数据库实例。验证各应用程序可与新版本一起正常使用。

    • 计算升级的实例使用的存储容量以决定升级是否需要额外的存储容量。为了在生产中支持新版本,您可能需要选择较大的实例类。有关更多信息,请参阅“ 数据库实例类”。

  8. 如果所有测试都通过,请升级您的生产数据库实例。我们建议您在允许对数据库实例进行写入操作之前确认数据库实例是否正常工作。

升级 Oracle 数据库实例

有关手动或自动升级 Oracle 数据库实例的信息,请参阅升级数据库实例引擎版本