跳至内容

在恢复 Amazon RDS Oracle 快照之前,我应该考虑什么?

1 分钟阅读
0

我想了解 Amazon Relational Database Service (Amazon RDS) for Oracle 快照恢复的最佳实践。我想在恢复 RDS for Oracle 数据库快照后防止延迟加载。

解决方法

数据库快照恢复的功能和限制

在执行恢复之前,请查看 RDS for Oracle 数据库快照恢复的以下功能和限制:

  • 您无法从 RDS for Oracle 数据库快照恢复到现有数据库实例。当您执行恢复时,Amazon RDS 会创建新的数据库实例。

  • 在恢复 RDS for Oracle 数据库实例时,您可以为新数据库实例选择多种规格。这包括新数据库实例使用的 Oracle 数据库引擎、许可证模型、DBName (SID) 和数据库实例类。

    **注意:**在恢复过程中,您无法将许可证从 Oracle Database Enterprise Edition 更改为 Oracle Database Standard Edition 2。

  • 在恢复 RDS for Oracle 数据库实例时,可以使用与源数据库快照不同的存储类型。但是恢复过程较慢,因为将数据迁移到新的存储类型需要额外的工作。

  • 当您恢复数据库实例时,在大多数情况下,默认数据库选项组与恢复的数据库实例相关联。例外情况是源数据库实例与包含持久或永久选项的选项组相关联。在此用例中,恢复的数据库实例必须使用包含相同持久或永久选项的选项组。

  • 恢复数据库实例时,默认虚拟私有云 (VPC)、数据库子网组和 VPC 安全组与恢复的实例相关联。但是,您可以另行指定。

  • 您无法从共享和加密的数据库快照中恢复数据库实例。您可以制作数据库快照的副本,然后从副本中恢复数据库实例。为此,您必须有权访问用于加密快照的 AWS Key Management Service (AWS KMS) 密钥。

数据库快照恢复的最佳实践

为避免 RDS for Oracle 数据库实例出现 incompatible-parameters 状态,请遵循以下最佳实践:

  • 使用与原始实例相同的参数组。此外,使用相同的内存参数和实例类。
  • 恢复使用扩展数据类型的数据库实例时,必须指定相同或新的参数组,并将 MAX_STRING_SIZE 参数设置为 EXTENDED。如果您指定默认参数组或将 MAX_STRING_SIZE 设置为 STANDARD 的任何其他参数组,则数据库实例将进入 incompatable-parameters 状态。

减少快照恢复后的延迟加载

当您从快照恢复 RDS for Oracle 数据库实例时,该实例将在预调配基础架构后立即可用。但是,一个名为延迟加载的持续进程在后台仍在继续。延迟加载没有固定的持续时间,但您可以减少延迟加载的效果。延迟加载正在进行时,I/O 操作可能会等到从 Amazon Simple Storage Service (Amazon S3) 读取所请求的数据。结果,I/O 延迟增加。要减少任何相关的速度缓慢情况,请在恢复完成后立即读取所有数据块。有关详细信息,请参阅从数据库快照恢复

要缩短延迟加载完成所需的时间,请使用以下选项:

**注意:**这些选项是引擎原生命令,因此仅影响多可用区 Amazon RDS for Oracle 数据库集群的主实例。

  • 使用 rdsadmin.rdsadmin_rman_util.validate_database 软件包运行数据库级别验证命令。为避免节流,您可以根据 vCPU 的数量修改并行性。
  • 根据您的引擎许可并行执行 Data Pump 完全导出。
  • 使用并行提示分别对所有大型或最常用的表进行显式选择。您可以执行涉及全表扫描的操作,例如 SELECT *。这使 Amazon RDS 可以下载从 Amazon S3 备份的所有表数据。

多可用区设置

  • 要在多可用区上从快照恢复或进行时间点故障恢复 (PITR) 操作,请先执行 RMAN 验证。通过失效转移重启,然后再次执行 RMAN 验证。

  • 如果您使用 Data Pump (expdp),则必须在多可用区设置中在两台主机上执行导出。

    **注意:**如果您使用包含 10 TiB 数据的 Data Pump 数据库,则您的 RDS for Oracle 数据库实例上必须至少有 10 TiB 的可用空间。

相关信息

Amazon RDS: 快照、恢复和还原揭秘