AWS Database Migration Service
分步迁移指南 (API 版本 2016-01-01)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

步骤 7:创建并运行 AWS DMS 迁移任务

利用 AWS DMS 任务,您可以指定要迁移的架构和迁移类型。您可以迁移现有数据、迁移现有数据并复制正在进行的更改或仅复制数据更改。

创建迁移任务

  1. 在 AWS DMS 控制台的 Create task (创建任务) 页中,指定任务选项。下表描述了设置。

    参数 描述

    任务名称

    为迁移任务键入一个名称。

    任务描述

    键入任务的说明。

    源终端节点

    显示 SQL Server 源终端节点。

    如果在账户中具有多个终端节点,请从列表中选择正确的终端节点。

    目标终端节点

    显示 Aurora MySQL 目标终端节点。

    复制实例

    显示 AWS DMS 复制实例。

    迁移类型

    选择一个选项。

    • Migrate existing data (迁移现有数据) - AWS DMS 仅迁移现有的数据。不捕获对源数据进行的更改,也不会将这些更改应用于目标。如果您能够承受在完全加载期间发生中断,这是最简单的选项。您还可以使用该选项创建数据库的测试副本。如果源 SQL Server 数据库是 Amazon RDS 数据库,则必须选择该选项。

    • Migrate existing data and replicate ongoing changes (迁移现有数据并复制持续更改) - 利用该选项,AWS DMS 可在迁移现有数据时捕获更改。甚至在加载批量数据后,AWS DMS 也会继续捕获和应用更改。最终,源和目标数据库将保持同步,从而最大限度减少停机时间。

    • 仅复制数据更改 – 使用不同的方法批量加载数据。该方法通常仅适用于同构迁移。

    在创建时启动任务

    在大多数情况下,您应该选择该选项。有时,您可能需要延迟启动任务,例如,如果要更改日志记录级别。

    该页面应类似于以下内容:

    
                                “Create task”(创建任务) 页面
  2. 任务设置下面指定设置。下表描述了设置。

    参数 描述

    目标表准备模式

    选择一个选项。

    • Do nothing (不执行任何操作) - AWS DMS 不会执行任何操作以准备表。表结构将保留原样,并且任何现有的数据保留在表中。您可以使用此方法来整合多个系统中的数据。

    • Drop tables on target (删除目标中的表) - AWS DMS 为您创建目标表。在迁移之前,AWS DMS 删除并重新创建要迁移的表。AWS DMS 仅为异构迁移创建表和主键。

    • Truncate (截断) - AWS DMS 在加载目标表之前将其截断。如果目标表不存在,AWS DMS 将创建该表。

    重要

    如果 AWS Schema Conversion Tool 已在目标上创建这些表,请选择 Do nothing (不执行任何操作)Truncate (截断)

    在复制时包括 LOB 列

    选择一个选项。

    • 不包括 LOB 列 – 不迁移 LOB 数据。

    • Full LOB mode (完整 LOB 模式) - AWS DMS 将所有 LOB(大型对象)从源迁移到目标,而不管大小如何。在此配置中,AWS DMS 没有与预计的 LOB 的最大大小相关的信息。因此,逐个迁移 LOB,一次迁移一个。完整 LOB 模式可能相对较慢。

    • Limited LOB mode (受限 LOB 模式) - 您设置 AWS DMS 接受的最大大小 LOB。该选项允许 AWS DMS 预分配内存并批量加载 LOB 数据。将截断超过最大 LOB 大小的 LOB,并将警告发布到日志文件中。在受限 LOB 模式下,您可以获得比完整 LOB 模式高得多的性能。如果可能,建议您使用受限 LOB 模式。

    最大 LOB 大小 (kb)

    如果选择 Limited LOB mode (受限 LOB 模式),该选项确定 AWS DMS 接受的最大 LOB 大小。大于该值的任何 LOB 将截断到该值。

    启用日志记录

    最好选择启用日志记录。如果启用日志记录,您可以查看任务遇到的任何错误或警告以及解决这些问题。

  3. 将“高级”设置保留为默认值。

  4. 如果在步骤 4:使用 AWS SCT 将 SQL Server 架构转换为 Aurora MySQL 的最后一步中通过 AWS SCT 创建并导出映射规则,请选择 Table mappings (表映射),然后选择 JSON 选项卡。然后选择启用 JSON 编辑,并输入保存的表映射。

    如果您没有创建映射规则,则转到下一步。

  5. 选择创建任务。将立即启动任务。

任务部分显示迁移任务的状态。


                    显示任务的源、目标、类型和完成状态的“Tasks”(任务) 部分

如果在设置期间选择启用日志记录,则可以监控您的任务。然后,您可以查看 Amazon CloudWatch 指标。

监控正在进行的数据迁移任务

  1. 在导航窗格中,选择任务

  2. 选择您的迁移任务。

  3. 选择任务监控选项卡,然后在该选项卡上监控正在执行的任务。

    在完成完全加载并应用缓存的更改后,该任务将自行停止。

  4. 在目标 Aurora MySQL 数据库上,如果禁用了外键约束和触发器,请使用以前保存的脚本启用外键约束和触发器。

  5. 如果以前删除了辅助索引,请在目标 Aurora MySQL 数据库上重新创建这些索引。

  6. 如果选择使用 AWS DMS 复制更改,请在 AWS DMS 控制台中为 AWS DMS 任务选择 Start/Resume (启动/恢复) 以启动该任务。

    要监控的重要复制实例指标包括:

    • CPU

    • FreeableMemory

    • DiskQueueDepth

    • CDCLatencySource

    • CDCLatencyTarget

    AWS DMS 任务将目标 Aurora MySQL 数据库与源数据库更改保持同步。AWS DMS 将任务中的所有表保持最新状态,直到执行应用程序迁移为止。在目标与源保持同步后,延迟将变为零或接近于零。

    有关更多信息,请参阅监控 AWS Database Migration Service 任务