将 Amazon f RDS or Oracle 数据库迁移到另一个AWS账户和AWS地区AWSDMS用于持续复制 - AWS Prescriptive Guidance

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 Amazon f RDS or Oracle 数据库迁移到另一个AWS账户和AWS地区AWSDMS用于持续复制

由 Durga Prasad Cheepuri () 和 Eduardo Valentim () AWS 创作 AWS

环境:PoC 或试点

源:数据库:关系

目标:Amazon f RDS or Oracle

R 类型:重新定位

工作负载:Oracle

技术:迁移;数据库

AWS服务:亚马逊 RDS

Summary

警告:IAM用户拥有长期凭证,这会带来安全风险。为帮助减轻这种风险,我们建议仅向这些用户提供执行任务所需的权限,并在不再需要这些用户时将其移除。

此模式将引导您完成将适用于 Oracle 的 Amazon Relational Database Service (AmazonRDS) 源数据库迁移到其他 AWS 账户 和的步骤 AWS 区域。该模式使用数据库快照进行一次性完整数据加载,并启用 AWS Database Migration Service (AWS DMS) 进行持续复制。

先决条件和限制

先决条件

产品版本

架构

源和目标技术堆栈

  • RDS适用于 Oracle 的亚马逊数据库实例

源AWS账户连接到包含来源和目标区域的目标AWS账户

持续复制架构

EC2实例上的数据库,通过对VPC等连接复制实例和 Amazon RDS。

工具

用于一次性完整数据加载的工具

  • Amazon Relational Database Service (AmazonRDS) 会创建数据库实例的存储卷快照,备份整个数据库实例,而不仅仅是单个数据库。创建数据库快照时,需要识别出将要备份的数据库实例,然后为数据库快照命名,以便稍后从此快照还原。创建快照所用时间因数据库大小而异。由于快照包含整个存储卷,因此,文件(如临时文件)的大小也会影响创建快照所需时间。有关使用数据库快照的更多信息,请参阅 Amazon RDS 文档中的创建数据库快照

  • AWS Key Management Service (AWS KMS) 为 A mazon RDS 加密创建密钥。 在创建加密数据库实例时,您还可以提供加密AWS KMS密钥的密钥标识符。如果您未指定AWS KMS密钥标识符,Amazon 将对您的新数据库实例RDS使用您的默认加密密钥。 AWS KMS为您创建默认加密密钥 AWS 账户。每个 AWS 账户 都有不同的默认加密密钥 AWS 区域。对于这种模式,应使用非默认AWS KMS密钥对 Amazon RDS 数据库实例进行加密。有关使用AWS KMS密钥进行亚马逊RDS加密的更多信息,请参阅亚马逊RDS文档中的加密亚马逊RDS资源

用于持续复制的工具

操作说明

任务描述所需技能

准备源 Oracle 数据库实例。

让 Amazon RDS for Oracle 数据库实例以ARCHIVELOG模式运行,然后设置保留期。有关详细信息,请参阅使用 AWS 托管 Oracle 数据库作为源 AWS DMS

DBA

设置源 Oracle 数据库实例的补充日志记录。

为 Ama RDS zon for Oracle 数据库实例设置数据库级和表级补充日志。有关详细信息,请参阅使用 AWS 托管 Oracle 数据库作为源 AWS DMS

DBA

更新来源账户中的 AWS KMS 密钥政策。

更新源代码中的 AWS KMS 密钥策略 AWS 账户 以允许目标 AWS 账户 使用加密的 Amazon RDS AWS KMS 密钥。有关详细信息,请参阅AWS KMS 文档

SysAdmin

手动创建源RDS数据库实例的 Amazon 数据库快照。

AWSIAM用户

与目标共享手动加密的 Amazon RDS 快照 AWS 账户。

有关详细信息,请参阅共享数据库快照

AWSIAM用户
任务描述所需技能

附加策略。

在目标中 AWS 账户,将 AWS Identity and Access Management (IAM) 策略附加到 root IAM 用户,以允许该IAM用户使用共享 AWS KMS 密钥复制加密的数据库快照。

SysAdmin

切换到源 AWS 区域。

AWSIAM用户

复制共享快照。

在 Amazon RDS 控制台的 “快照” 窗格中,选择 “与我共享”,然后选择共享的快照。使用源数据库使用的 AWS KMS 密钥 AWS 区域 的 Amazon 资源名称 (ARN),将快照复制到与源数据库相同的位置。有关详细信息,请参阅复制数据库快照

AWSIAM用户

切换到目标 AWS 区域,然后创建新 AWS KMS 密钥。

AWSIAM用户

复制快照。

切换到源 AWS 区域。在 Amazon RDS 控制台的 “快照” 窗格中,选择 O wned by Me,然后选择复制的快照。使用新目标 AWS 区域 的 AWS KMS 密钥将快照复制到目标 AWS 区域。

AWSIAM用户

还原快照。

切换到目标 AWS 区域。在 Amazon RDS 控制台的 “快照” 窗格中,选择 Own ed by Me。选择复制的快照并将其还原到 Amazon RDS for Oracle 数据库实例。有关详细信息,请参阅从数据库快照恢复

AWSIAM用户
任务描述所需技能

创建具有适当权限的 Oracle 用户。

创建一个具有 Oracle 所需权限的 Oracle 用户作为来源 AWS DMS。有关详细信息,请参阅AWS DMS 文档

DBA

为 Oracle LogMiner 或 Oracle 二进制读取器配置源数据库。

DBA
任务描述所需技能

创建具有适当权限的 Oracle 用户。

创建一个具有 Oracle 所需权限的 Oracle 用户作为目标 AWS DMS。有关详细信息,请参阅AWS DMS 文档

DBA
任务描述所需技能

在目标中创建复制实例 AWS 区域。

在目标的中VPC创建复制实例 AWS 区域。有关详细信息,请参阅AWS DMS 文档

AWSIAM用户

创建具有所需加密的源端点和目标端点并测试连接。

有关详细信息,请参阅AWS DMS 文档

DBA

创建复制任务。

  1. 对于迁移类型,请选择持续复制。

  2. 对于变更数据捕获 (CDC) 的起点,使用 Amazon RDS 快照进行满载时的 Oracle 系统更改编号 (SCN),或者使用拍摄满载时的时间戳。

  3. 对于TargetTablePrepMode,选择 DO_ NOTHING。如果任务有大型二进制对象 (LOB) 数据表,请选择限制LOB模式,然后将最大LOB大小设置为表中LOB数据的最大大小。

  4. 启用日志记录。

  5. 将通过键关联的表分组到单个任务中。如果存在包含大量LOB数据的表,并且该表与其他表没有关系,请使用前面描述的LOB设置为其创建单独的任务。

有关详细信息,请参阅AWS DMS 文档

IAM用户

启动和监测任务。

有关详细信息,请参阅AWS DMS 文档

AWSIAM用户

如果需要,可以对任务启用验证。

注意,启用验证确实会影响复制的性能。有关详细信息,请参阅AWS DMS 文档

AWSIAM用户

相关资源