

# 使用 AWS Database Migration Service 将 EC2 数据库自动迁移到 Amazon RDS
<a name="USER_DMS_migration"></a>

您可以使用 RDS 控制台将 EC2 数据库迁移到 RDS。RDS 使用 AWS Database Migration Service（AWS DMS）迁移您的源 EC2 数据库。AWS DMS 允许您将关系数据库迁移到 AWS 云中。有关 AWS Database Migration Service 的更多信息，请参阅《AWS Database Migration Service 用户指南》**中的[什么是 AWS Database Migration Service？](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html)。

要开始迁移，您必须创建等效的 RDS 数据库实例，以将数据迁移到其中。创建目标数据库后，您可以将 EC2 数据库导入其中。对于小于 1 TiB 的源数据库，此迁移操作可减少将数据迁移到 RDS 所需的时间和资源。

## 概述
<a name="USER_DMS_migration-overview"></a>

RDS 控制台允许您将 EC2 数据库迁移到等效的 RDS 数据库中。您必须创建 RDS 数据库，才能从控制台进行迁移。

您可以为以下数据库引擎迁移 EC2 数据库：
+ MySQL
+ MariaDB
+ PostgreSQL

该迁移过程涉及到以下步骤：
+ 在 RDS 中创建等效的数据库。为了使这些数据库具有等效性，它们必须具有相同的数据库引擎和兼容的引擎版本。它们还必须位于同一 VPC 中。有关创建数据库的说明，请参阅 [创建 Amazon RDS 数据库实例](USER_CreateDBInstance.md)。
+ 选择数据库的复制类型：
  + **完全加载迁移** – RDS 将完整的源数据库复制到目标数据库，并在必要时在目标中创建新表。
**注意**  
此选项会导致您的 RDS 数据库中断。
  + **完全加载和更改数据捕获（CDC）迁移** – 与完全加载迁移类似，使用此选项，RDS 会将完整的源数据库复制到目标数据库。但是，在完全加载迁移之后，RDS 会将源中捕获的任何更改应用于目标数据库。更改数据捕获通过使用数据库引擎的本机 API 来收集对数据库日志的更改。
**注意**  
此选项会导致您的 RDS 数据库中断。
  + **更改数据捕获（CDC）**– 使用此选项可使您的目标数据库在迁移过程中保持可用。RDS 会将源数据库中正在进行的更改迁移到目标数据库。
+ RDS 会创建必要的联网资源来促进迁移。RDS 在创建所需资源后，会通知您已创建的资源并允许您启动数据传输。

  完成迁移所需的时间取决于复制的类型和源数据库的大小。

## 先决条件
<a name="USER_DMS_migration-Prerequisites"></a>

### MySQL 和 MariaDB
<a name="USER_DMS_migration-Prerequisites.MySQL"></a>

在开始将 MySQL 或 MariaDB 数据库用作源数据库之前，请确保满足以下先决条件。这些先决条件适用于 AWS 托管的源。

您必须拥有具有复制管理员角色的 AWS DMS 的账户。该角色需要以下权限：
+ **REPLICATION CLIENT** – 仅 CDC 任务需要此权限。换而言之，full-load-only 任务不需要此权限。
+ **REPLICATION SLAVE** – 仅 CDC 任务需要此权限。换而言之，full-load-only 任务不需要此权限。

AWS DMS 用户还必须具有为复制指定的源表的 SELECT 权限。

如果您使用 MySQL 特定的迁移前评测功能，请授予以下权限。

```
grant select on mysql.user to <dms_user>;
grant select on mysql.db to <dms_user>;
grant select on mysql.tables_priv to <dms_user>;
grant select on mysql.role_edges to <dms_user>  #only for MySQL version 8.0.11 and higher
```

### PostgreSQL
<a name="USER_DMS_migration-Prerequisites.PostgreSQL"></a>

在从 AWS 托管的 PostgreSQL 源数据库迁移数据之前，请执行以下操作：
+ 我们建议您使用具有 PostgreSQL 数据库实例所需最低权限的 AWS 用户账户作为 AWS DMS 的 PostgreSQL 源端点的用户账户。建议不要使用主账户。该账户必须具有 `rds_superuser` 和 `rds_replication` 角色。`rds_replication` 角色可授予管理逻辑时隙和使用逻辑时隙流式处理数据的权限。

**注意**  
一些 AWS DMS 事务在被 DMS 引擎再次使用之前会空闲一段时间。在 PostgreSQL 版本 9.6 及更高版本中使用参数 `idle_in_transaction_session_timeout`，能够导致空闲事务超时并失败。

## 限制
<a name="USER_DMS_migration-Limitations"></a>

以下限制适用于自动迁移过程：
+ 您的目标数据库状态必须为**可用**才能开始源数据库迁移。
+ 当从 MySQL 源数据库迁移时，您的 RDS 账户必须具有复制管理员角色。您还必须为该角色应用适当的权限。
+ EC2 实例和目标数据库必须位于同一 VPC 中。
+ 使用**从 EC2 数据库迁移数据**操作时，您无法将 EC2 数据库迁移到以下目标数据库：
  + 作为集群成员的数据库
  + Oracle、SQL Server 和 Db2 数据库
  + MySQL 版本低于 5.7 的数据库
  + PostgreSQL 版本低于 10.4 的数据库
  + MariaDB 版本低于 10.2 的数据库

# 为同构迁移创建 IAM 资源
<a name="USER_DMS_migration-IAM"></a>

RDS 使用 AWS DMS 迁移数据。为了访问数据库并迁移数据，AWS DMS 会为同构数据迁移创建无服务器环境。在此环境中，AWS DMS 需要访问 VPC 对等连接、路由表、安全组和其他 AWS 资源。此外，AWS DMS 将每个数据迁移的日志、指标和进度存储在 Amazon CloudWatch 中。要创建数据迁移项目，AWS DMS 需要访问这些服务。

此外，AWS DMS 需要访问代表一组用户凭证的密钥，以验证源和目标连接的数据库连接。

**注意**  
通过使用**从 EC2 实例迁移数据**操作，您可以使用 RDS 控制台生成这些 IAM 资源。如果您使用控制台生成的 IAM 资源，则跳过此步骤。

此过程需要以下 IAM 资源：

**Topics**
+ [为同构数据迁移创建 IAM 策略](#USER_DMS_migration-IAM.iam-policy)
+ [为同构数据迁移创建 IAM 角色](#USER_DMS_migration-IAM.iam-role)
+ [创建密钥访问策略和角色](USER_DMS_migration-IAM.secret-iam-role-policy.md)
+ [为 AWS DMS 创建 IAM 角色以管理 Amazon VPC](USER_DMS_migration-IAM.dms-vpc-role.md)

## 为同构数据迁移创建 IAM 策略
<a name="USER_DMS_migration-IAM.iam-policy"></a>

在此步骤中，创建 IAM policy，向 AWS DMS 提供 Amazon EC2 和 CloudWatch 资源的访问权限。接下来，创建 IAM 角色并附加此策略。

**为数据迁移创建 IAM 策略**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 IAM 控制台：[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在导航窗格中，选择**策略**。

1. 选择**创建策略**。

1. 在**创建策略**页面中，选择 **JSON** 选项卡。

1. 将下面的 JSON 粘贴到编辑器中。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:DescribeRouteTables",
                   "ec2:DescribeSecurityGroups",
                   "ec2:DescribeVpcPeeringConnections",
                   "ec2:DescribeVpcs",
                   "ec2:DescribePrefixLists",
                   "logs:DescribeLogGroups"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "servicequotas:GetServiceQuota"
               ],
               "Resource": "arn:aws:servicequotas:*:*:vpc/L-0EA8095F"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogGroup",
                   "logs:DescribeLogStreams"
               ],
               "Resource": "arn:aws:logs:*:*:log-group:dms-data-migration-*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogStream",
                   "logs:PutLogEvents"
               ],
               "Resource": "arn:aws:logs:*:*:log-group:dms-data-migration-*:log-stream:dms-data-migration-*"
           },
           {
               "Effect": "Allow",
               "Action": "cloudwatch:PutMetricData",
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:CreateRoute",
                   "ec2:DeleteRoute"
               ],
               "Resource": "arn:aws:ec2:*:*:route-table/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:CreateTags"
               ],
               "Resource": [
                   "arn:aws:ec2:*:*:security-group/*",
                   "arn:aws:ec2:*:*:security-group-rule/*",
                   "arn:aws:ec2:*:*:route-table/*",
                   "arn:aws:ec2:*:*:vpc-peering-connection/*",
                   "arn:aws:ec2:*:*:vpc/*"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AuthorizeSecurityGroupEgress",
                   "ec2:AuthorizeSecurityGroupIngress"
               ],
               "Resource": "arn:aws:ec2:*:*:security-group-rule/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AuthorizeSecurityGroupEgress",
                   "ec2:AuthorizeSecurityGroupIngress",
                   "ec2:RevokeSecurityGroupEgress",
                   "ec2:RevokeSecurityGroupIngress"
               ],
               "Resource": "arn:aws:ec2:*:*:security-group/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AcceptVpcPeeringConnection",
                   "ec2:ModifyVpcPeeringConnectionOptions"
               ],
               "Resource": "arn:aws:ec2:*:*:vpc-peering-connection/*"
           },
           {
               "Effect": "Allow",
               "Action": "ec2:AcceptVpcPeeringConnection",
               "Resource": "arn:aws:ec2:*:*:vpc/*"
           }
       ]
   }
   ```

------

1. 选择**下一步：标签**和**下一步：审核**。

1. 在**名称\$1**中输入 **HomogeneousDataMigrationsPolicy**，然后选择**创建策略**。

## 为同构数据迁移创建 IAM 角色
<a name="USER_DMS_migration-IAM.iam-role"></a>

在此步骤中，您将创建 IAM 角色，该角色提供对 AWS Secrets Manager、Amazon EC2 和 CloudWatch 的访问权限。

**为数据迁移创建 IAM 角色**

1. 登录 AWS 管理控制台，然后通过以下网址打开 IAM 控制台：[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在导航窗格中，选择**角色**。

1. 选择**创建角色**。

1. 在**选择可信实体**页面中，在**可信实体类型**下选择 **AWS 服务**。对于**其他 AWS 服务的应用场景**，选择 **DMS**。

1. 选中 **DMS** 复选框，然后选择**下一步**。

1. 在**添加权限**页面上，选择之前创建的 **HomogeneousDataMigrationsPolicy**。选择**下一步**。

1. 在**命名、检查并创建**页面上，在**角色名称**中输入 **HomogeneousDataMigrationsRole**，然后选择**创建角色**。

1. 在**角色**页面上，在**角色名称**中输入 **HomogeneousDataMigrationsRole**。选择 **HomogeneousDataMigrationsRole**。

1. 在 **HomogeneousDataMigrationsRole** 页面上，选择**信任关系**选项卡。选择**编辑信任策略**。

1. 在**编辑信任策略**页面上，将以下 JSON 粘贴到编辑器中，替换现有文本。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "",
               "Effect": "Allow",
               "Principal": {
                   "Service": [
                       "dms-data-migrations.amazonaws.com",
                       "dms.your_region.amazonaws.com"
                   ]
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

   在以上示例中，请用您的 AWS 区域名称替换 *your\$1region*。

   上述基于资源的策略为 AWS DMS 服务主体提供了根据客户管理型 **HomogeneousDataMigrationsPolicy** 策略执行任务的权限。

1. 选择**更新策略**。

# 创建密钥访问策略和角色
<a name="USER_DMS_migration-IAM.secret-iam-role-policy"></a>

按照以下步骤创建您的密钥访问策略和角色，允许 DMS 访问源数据库和目标数据库的用户凭证。

**创建密钥访问策略和角色，以允许 Amazon RDS 访问 AWS Secrets Manager，从而访问相应的密钥**

1. 登录到 AWS 管理控制台，然后通过以下网址打开 AWS Identity and Access Management（IAM）控制台：[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 选择**策略**，然后选择**创建策略**。

1. 选择 **JSON** 并输入以下策略，以启用对密钥的访问和解密。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:SecretName-ABCDEF"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt",
                   "kms:DescribeKey"
               ],
               "Resource": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
           }
       ]
   }
   ```

------

   此处，`secret_arn` 是密钥的 ARN，您可以根据需要从任一 `SecretsManagerSecretId` 中获取，`kms_key_arn` 是您用于加密密钥的 AWS KMS 密钥的 ARN，如以下示例所示。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:us-east-2:123456789012:secret:MySQLTestSecret-qeHamH"
           },
           {
                "Effect": "Allow",
                "Action": [
                           "kms:Decrypt",
                           "kms:DescribeKey"
                         ],
                "Resource": "arn:aws:kms:us-east-2:123456789012:key/761138dc-0542-4e58-947f-4a3a8458d0fd"
           }
        ]
   }
   ```

------
**注意**  
如果您使用 AWS Secrets Manager 创建的默认加密密钥，则无需为 `kms_key_arn` 指定 AWS KMS 权限。  
如果您希望策略提供对两个密钥的访问权限，只需为另一个 *secret\$1arn* 指定一个额外的 JSON 资源对象。

1. 查看并创建具友好名称和描述（可选）的策略。

1. 选择**角色**，然后选择**创建角色**。

1. 选择 **AWS 服务**作为可信实体的类型。

1. 从服务列表中选择 **DMS** 作为可信服务，然后选择**下一步：权限**。

1. 查找并附加您在步骤 4 中创建的策略，然后继续添加所有标签并查看角色。此刻，编辑角色的信任关系，以使用 Amazon RDS 区域服务主体作为可信实体。此主体采用以下格式。

   ```
   dms.region-name.amazonaws.com
   ```

   此处，*`region-name`* 是区域的名称，如 `us-east-1`。因此，此区域的 Amazon RDS 区域服务主体如下。

   ```
   dms.us-east-1.amazonaws.com
   dms-data-migrations.amazonaws.com
   ```

# 为 AWS DMS 创建 IAM 角色以管理 Amazon VPC
<a name="USER_DMS_migration-IAM.dms-vpc-role"></a>

您必须为 AWS DMS 创建 IAM 角色，才能管理资源的 VPC 设置。要成功迁移，此角色必须可用。

**为数据库迁移创建 `dms-vpc-role`**

1. 登录 AWS 管理控制台，然后打开 IAM 控制台：[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在控制台的导航窗格中，选择 **Roles**，然后选择 **Create role**。

1. 对于**选择可信实体**选项，选择 **AWS 服务**选项。

   对于**使用案例**，选择 **DMS**。

1. 对于**添加权限**步骤，选择 `AmazonDMSVPCManagementRole` 并选择**下一步**。

1. 在**命名、查看和创建**页面中，将**角色名称**设置为 `dms-vpc-role`，并选择**创建角色**。

这样将为 DMS 创建角色来管理用于迁移的 VPC 设置。

# 为 EC2 数据库设置数据迁移
<a name="USER_DMS_migration-SetUp"></a>

要从 EC2 源数据库开始迁移数据，您必须创建一个等效的 RDS 数据库。有关创建数据库的说明，请参阅 [创建 Amazon RDS 数据库实例](USER_CreateDBInstance.md)。

创建目标数据库后，使用以下步骤设置数据迁移：

**设置数据迁移项目**

1. 在 RDS 控制台的**数据库**页面上选择目标数据库。

1. 选择**操作**下拉列表并选择**从 EC2 数据库迁移数据**选项。要查看支持的目标数据库，请参阅 [限制](USER_DMS_migration.md#USER_DMS_migration-Limitations)。

1. 在**选择源 EC2 数据库**部分下：

   1. 检查**引擎类型**并确保它与源数据库相同。

      另外，请检查引擎版本是否兼容。

   1. 对于 **EC2 实例**，请选择您的源数据库所驻留的 EC2 实例。

   1. 在**端口**中，输入源数据库允许流量的端口。

   1. 对于**密钥**，如果您没有现有密钥，请选择**创建和使用新密钥**。为您的源数据库输入**用户名**和**密码**。此外，选择要用于加密该密钥的 KMS 密钥。

      如果您有现有密钥，请选择**使用现有密钥**，然后从下拉列表中选择密钥。

   1. 对于**密钥的 IAM 角色**，如果您有现有的 IAM 角色，请选择**使用现有的 IAM 角色**，然后从下拉列表中选择一个可以访问上一步中的密钥 ID 的 IAM 角色。

      如果您没有现有的 IAM 角色，请选择**创建和使用新的 IAM 角色**。为 **IAM 角色名称输入您的角色的新名称。您可以在下面的链接中查看与此角色关联的权限。**

1. 在**查看目标 RDS 数据库**部分下：

   1. 在该部分顶部，确认目标数据库的设置。

   1. 对于**密钥**，如果您没有保存目标数据库凭证的现有密钥，请选择**创建和使用新密钥**。

      如果您有现有密钥，请从下拉列表中选择该密钥。

   1. 对于**密钥的 IAM 角色**，选择可以访问上一步中密钥的 IAM 角色。如果您没有现有 IAM 角色，还可以创建一个新 IAM 角色。

      如果下拉列表未填充 IAM 角色，请以 `arn:aws:iam:account_id:role/roleName` 格式指定 **IAM 角色 ARN**。

1. 在**配置数据迁移**部分下：

   1. 从**完全加载**、**完全加载和更改数据捕获（CDC）**或**更改数据捕获（CDC）**中选择数据迁移的类型。有关这些选项的详细信息，请参阅[概述](USER_DMS_migration.md#USER_DMS_migration-overview)。

      迁移开始后，您无法修改迁移类型。

   1. 对于**数据迁移的 IAM 角色**，如果您有现有的 IAM 角色，请选择**使用现有的 IAM 角色**，然后从下拉列表中选择一个 IAM 角色，该角色将授予 DMS 创建迁移所需资源的权限。如果您没有现有的 IAM 角色，请选择**创建和使用新的 IAM 角色**。

1. 确认**查看迁移设置**选项卡显示了成功设置数据迁移所需的设置。

1. 选择**迁移**以完成迁移设置。

完成这些步骤后，您可以通过在控制台的进度横幅中选择**查看详细信息**来查看正在为数据迁移设置的资源。设置好所需资源后，迁移将自动开始。如果您创建 

要将多个数据库迁移到目标数据库，请使用有关新 EC2 数据库的详细信息重新开始此过程。

# 管理数据迁移
<a name="USER_DMS_migration.Managing"></a>

从 RDS 控制台使用**从 EC2 数据库迁移数据**操作后，RDS 会自动启动迁移。

如果您使用 AWS DMS 控制台创建迁移资源，则可以启动迁移过程。

## 启动数据迁移
<a name="USER_DMS_migration.Managing.Start"></a>

请按照以下步骤启动数据迁移：

**启动数据迁移**

1. 在 RDS 控制台的**数据库**页面上选择目标数据库。

1. 在数据库详细信息页面上，选择**数据迁移**选项卡。

1. 在**数据迁移**选项卡下，**关联的数据迁移**列出了可用的数据迁移。

   设置所需资源后，使用 RDS 控制台设置的迁移会自动启动。

   使用 DMS 控制台设置的迁移将设置为**就绪**。

   要开始这些迁移，请选择**操作**下拉列表并选择**启动**。

1. 这样将开始 EC2 数据库的数据迁移。

## 停止数据迁移
<a name="USER_DMS_migration.Managing.Stop"></a>

对于复制类型为完全加载的数据迁移，停止迁移会导致迁移过程停止且无法恢复。停止迁移后，必须重新启动迁移。

对于复制类型设置为更改数据捕获（CDC）或完全加载和 CDC 的迁移，您可以停止持续复制过程，稍后再恢复该过程。

**停止数据迁移**

1. 在 RDS 控制台的**数据库**页面上选择目标数据库。

1. 在数据库详细信息页面上，选择**数据迁移**选项卡。

1. 在**数据迁移**选项卡下，**关联的数据迁移**列出了正在进行的数据迁移。

   要停止迁移，请选择数据迁移，然后在**操作**下拉列表中选择**停止**。

1. 这样将停止 EC2 数据库的数据迁移。

## 恢复数据迁移
<a name="USER_DMS_migration.Managing.Resuming"></a>

对于复制类型为完全加载和更改数据捕获（CDC）或更改数据捕获（CDC）迁移的数据迁移，您可以从最后一个停止点恢复 CDC 流程。

**恢复数据迁移**

1. 在 RDS 控制台的**数据库**页面上选择目标数据库。

1. 在数据库详细信息页面上，选择**数据迁移**选项卡。

1. 在**数据迁移**选项卡下，**关联的数据迁移**列出了已停止的数据迁移。

   要恢复迁移，请选择数据迁移，然后在**操作**下拉列表中选择**恢复处理**。

1. 这样将恢复 EC2 数据库的数据迁移。

## 删除数据迁移
<a name="USER_DMS_migration.Managing.Deleting"></a>

要删除关联的数据迁移，请使用以下说明：

**删除数据迁移**

1. 在 RDS 控制台的**数据库**页面上选择目标数据库。

1. 在数据库详细信息页面上，选择**数据迁移**选项卡。

1. 要删除迁移，请选择数据迁移，然后在**操作**下拉列表中选择**删除**。

1. 这样将删除相应的数据迁移。

删除正在进行的数据迁移不会影响已加载到目标数据库的任何数据。

## 重新启动数据迁移
<a name="USER_DMS_migration.Managing.Restarting"></a>

要从 CDC 起点重新启动关联的数据迁移，请按照以下说明进行操作。

**重新启动数据迁移**

1. 在 RDS 控制台的**数据库**页面上选择目标数据库。

1. 在数据库详细信息页面上，选择**数据迁移**选项卡。

1. 要重新启动迁移，请选择数据迁移，然后在**操作**下拉列表中选择**重新启动**。

1. 这样将从 CDC 起点重新启动数据迁移。

重新启动正在进行的数据迁移不会影响已加载到目标数据库的任何数据。

# 监控数据迁移
<a name="USER_DMS_migration.Monitoring"></a>

数据迁移开始后，您可以监控其状态和进度。大型数据集的数据迁移需要数小时才能完成。为了保持数据迁移的可靠性、可用性和高性能，请定期监控迁移进度。

**检查数据迁移的状态和进度**

1. 在 RDS 控制台的**数据库**页面上选择目标数据库。

1. 在数据库详细信息页面上，选择**数据迁移**选项卡。

1. **关联的数据迁移**部分列出了您的数据迁移。检查**状态**列。

1. 对于正在运行的数据迁移，**迁移过程**列显示了已迁移数据的百分比。

1. 要在 CloudWatch 中监控进程，请使用 **CloudWatch** 列中的链接。

## 迁移状态
<a name="USER_DMS_migration.Monitoring.status"></a>

对于您运行的每个数据迁移，RDS 控制台都会显示**状态**。以下列表包括状态：
+ `Ready`：数据迁移已准备好开始。
+ `Starting`：RDS 正在为您的数据迁移创建无服务器环境。
+ `Load running`：RDS 正在执行完全加载迁移。
+ `Load complete, replication ongoing`：RDS 已完成完全加载，现在复制正在进行的更改。此状态仅适用于完全加载和 CDC 类型的迁移。
+ `Replication ongoing`：RDS 正在复制正在进行的更改。此状态仅适用于 CDC 类型的迁移。
+ `Stopping`：RDS 正在停止数据迁移。当您从**操作**菜单中选择停止数据迁移时，此状态适用。
+ `Stopped`：RDS 已停止数据迁移。
+ `Failed`：数据迁移已失败。有关更多信息，请参阅日志文件。
+ `Restarting`：数据迁移已从 CDC 起点重新启动了正在进行的数据复制。