

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

# 使用 AWS DMS 将 Oracle 数据库从亚马逊迁移 EC2 到 Amazon RDS for Oracle
<a name="migrate-an-oracle-database-from-amazon-ec2-to-amazon-rds-for-oracle-using-aws-dms"></a>

*Chethan Gangadharaiah 和 Brian motzer，Amazon Web Services*

## Summary
<a name="migrate-an-oracle-database-from-amazon-ec2-to-amazon-rds-for-oracle-using-aws-dms-summary"></a>

此模式描述了使用 AWS 数据库迁移服务 (AWS DMS) 将亚马逊弹性计算云 (Amazon EC2) 上的 Oracle 数据库迁移到适用于 Oracle 的亚马逊关系数据库服务 (Amazon RDS) 的步骤。该模式还使用 Oracle SQL Developer 或 SQL \*Plus 连接到您的 Oracle 数据库实例，并包括一个可自动执行某些任务的 AWS CloudFormation 模板。

迁移至 Amazon RDS for Oracle 让您专注于业务和应用程序，而 Amazon RDS 则负责数据库管理任务，例如预置数据库、备份和恢复、安全补丁、版本升级和存储管理。

## 先决条件和限制
<a name="migrate-an-oracle-database-from-amazon-ec2-to-amazon-rds-for-oracle-using-aws-dms-prerequisites-and-limitations"></a>

**先决条件**
+ 一个有效的 Amazon Web Services account
+ 亚马逊 Oracle 数据库的亚马逊系统映像 (AMI) EC2

**产品版本**
+ AWS DMS 支持适用于 Amazon RDS 实例数据库的 Oracle 版本 11g（版本 11.2.0.3.v1 和更高版本）、12c 和 18c，包括 Enterprise、Standard、Standard One 和 Standard Two 版本。有关支持的版本的最新信息，请参阅 AWS 文档中的[使用 Oracle 数据库作为 AWS DMS 的目标](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html)。（随附的 AWS CloudFormation 模板使用 Oracle 版本 12c 作为源数据库。）
+ Oracle SQL Developer 4.0.3

## 架构
<a name="migrate-an-oracle-database-from-amazon-ec2-to-amazon-rds-for-oracle-using-aws-dms-architecture"></a>

**源架构**
+ 亚马逊上的 Oracle 数据库 EC2

**目标架构**
+ Amazon RDS for Oracle

**迁移架构**

![](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/patterns/images/pattern-img/4db0c731-0897-4eb8-a06f-b648c3d94b2c/images/636c2a69-5a78-482d-ae81-55e9ec975ead.png)


## 工具
<a name="migrate-an-oracle-database-from-amazon-ec2-to-amazon-rds-for-oracle-using-aws-dms-tools"></a>
+ [AWS DMS](https://docs.aws.amazon.com/dms/index.html) – AWS Database Migration Service (AWS DMS) 可帮助您快速安全地将数据库迁移到 AWS。其支持同构与异构迁移。有关支持的 Oracle 数据库版本和版本的信息，请参阅 AWS 文档中的[使用 Oracle 数据库作为 AWS DMS 的源](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html)和[使用 Oracle 数据库作为 AWS DMS 的目标](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.Oracle.html)。
+ **Oracle SQL Developer 或 SQL \*Plus** – 此类工具允许您连接至 Amazon RDS for Oracle 数据库实例。

## 操作说明
<a name="migrate-an-oracle-database-from-amazon-ec2-to-amazon-rds-for-oracle-using-aws-dms-epics"></a>

### 设置目标数据库
<a name="set-up-your-target-database"></a>


| Task | 说明 | 所需技能 | 
| --- | --- | --- | 
| 创建 Amazon RDS for Oracle 数据库实例。 | 登录 AWS 管理控制台并通过以下网址打开 Amazon RDS 控制台 https://console.aws.amazon.com/rds/。为 Oracle 数据库选择相应的引擎、模板、数据库凭证设置、实例类型、存储、多可用区设置、虚拟私有云（VPC）和配置、登录凭证以及其他设置创建 Oracle 数据库实例。有关说明，请查看 “相关资源” 部分的链接。或者使用附件中的 AWS CloudFormation 模板 (create\_rds.yaml) 创建 Amazon RDS for Oracle 数据库实例。 | 开发者版 | 
| 连接 Amazon RDS 并向 Oracle 用户授予特权。 | 修改安全组以打开相应端口，以便从本地计算机和 AWS DMS 复制实例连接。配置连接时，请确保选择 “可公开访问” 选项，这样您就可以从 VPC 外部连接至数据库。使用登录凭证通过 Oracle SQL Developer 或 SQL \*Plus 连接至 Amazon RDS，创建 AWS DMS 用户，并为 AWS DMS 用户提供修改数据库所需权限。 | 开发者版 | 

### 配置源 EC2 实例的安全组
<a name="configure-the-security-group-of-the-source-ec2-instance"></a>


| Task | 说明 | 所需技能 | 
| --- | --- | --- | 
| 检查 Oracle 数据库是否已启动并正在运行。 | 使用安全外壳 (SSH) 连接到 EC2 实例，然后尝试使用 SQL \*Plus 连接到 Oracle 数据库。 | 开发者版 | 
| 修改安全组。 | 修改 EC2 实例的安全组以打开相应的端口，这样您就可以从本地计算机和 AWS DMS 复制实例进行连接。 | 开发者版 | 

### 设置 AWS DMS
<a name="set-up-aws-dms"></a>


| Task | 说明 | 所需技能 | 
| --- | --- | --- | 
| 创建 AWS DMS 复制实例。 | 在 AWS DMS 中，在与 Amazon RDS for Oracle 数据库实例相同的 VPC 中创建复制实例。指定复制实例的名称和描述，选择实例类别和复制引擎版本（使用默认值），选择您在其中创建 Amazon RDS 数据库实例的 VPC，根据需要设置多可用区设置，分配存储，指定可用区，并配置其他设置。或者，您可以使用附件中的 AWS CloudFormation 模板 (dms.yaml) 来实现此步骤。 | 数据库管理员 | 
| 连接至源数据库端点和目标数据库端点。 | 经指定端点标识符、引擎、服务器、端口、登录凭证和其他连接属性创建源数据库端点和目标数据库端点。对于源服务器，请使用托管 Oracle 数据库的 EC2 实例的公有 DNS。对于目标服务器，请使用 Amazon RDS for Oracle 端点。运行测试，以验证源连接和目标连接是否正常工作。或者，您可以使用附件中的 AWS CloudFormation 模板 (dms.yaml) 来实现此步骤。 | 数据库管理员 | 
| 创建 AWS DMS 任务。 | 创建 AWS DMS 任务，以将数据从源端点迁移至目标端点，在源端点和目标端点之间设置复制，或同时执行两种操作。创建 AWS DMS 任务时，请指定复制实例、源端点、目标端点、迁移类型（仅数据、仅复制或二者兼而有之）、表映射和筛选条件。在 Amazon CloudWatch 中运行 AWS DMS 任务，监控任务，检查表格统计数据并查看日志。或者，您可以使用附件中的 AWS CloudFormation 模板 (dms.yaml) 来实现此步骤。 | 数据库管理员 | 

## 相关资源
<a name="migrate-an-oracle-database-from-amazon-ec2-to-amazon-rds-for-oracle-using-aws-dms-related-resources"></a>
+ [创建 Amazon RDS 数据库实例](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateOracleInstance.html)
+ [与运行 Oracle 数据库引擎的数据库实例连接](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ConnectToOracleInstance.html)
+ [AWS DMS 文档](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html)
+ [AWS DMS 演练 Step-by-Step](https://docs.aws.amazon.com/dms/latest/sbs/DMS-SBS-Welcome.html)
+ [将 Oracle 数据库迁移至 AWS Cloud](https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-oracle-database/welcome.html)

## 附件
<a name="attachments-4db0c731-0897-4eb8-a06f-b648c3d94b2c"></a>

要访问与此文档相关联的其他内容，请解压以下文件：[attachment.zip](samples/p-attach/4db0c731-0897-4eb8-a06f-b648c3d94b2c/attachments/attachment.zip)