本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将 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) 进行持续复制。
先决条件和限制
先决条件
AWS 账户 包含源 Amazon RDS for Oracle 数据库的活动,该数据库已使用非默认 AWS Key Management Service (AWS KMS) 密钥进行加密
AWS 账户 在与源数据库不同的 AWS 区域 数据库中处于活动状态,用于目标 Amazon RDS for Oracle 数据库
源和目标之间的虚拟私有云 (VPC) 对等 VPCs
产品版本
Oracle 版本 11g(版本 11.2.0.3.v1 及更高版本)以及最高版本 12.2 和 18c。有关支持的版本和版本的最新列表,请参阅 AWS 文档 AWS DMS中的 “使用 Oracle 数据库作为源 AWS DMS以及使用 Oracle 数据库作为目标”。有关亚马逊支持的 Oracle 版本RDS,请参阅亚马逊上的 Oracle RDS。
架构
源和目标技术堆栈
RDS适用于 Oracle 的亚马逊数据库实例
持续复制架构
工具
用于一次性完整数据加载的工具
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资源。
用于持续复制的工具
AWS Database Migration Service (AWS DMS) 用于复制正在进行的更改以及使源数据库和目标数据库保持同步。有关使用进行持续复制 AWS DMS 的更多信息,请参阅 AWS DMS 文档中的使用 AWS DMS 复制实例。
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
准备源 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 |
创建复制任务。 |
有关详细信息,请参阅AWS DMS 文档。 | IAM用户 |
启动和监测任务。 | 有关详细信息,请参阅AWS DMS 文档。 | AWSIAM用户 |
如果需要,可以对任务启用验证。 | 注意,启用验证确实会影响复制的性能。有关详细信息,请参阅AWS DMS 文档。 | AWSIAM用户 |