使用 DMS 架构转换来转换数据库架构 - Amazon Database Migration Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 DMS 架构转换来转换数据库架构

Amazon Database Migration Service (Amazon DMS) 中的 DMS 架构转换使得不同类型的数据库之间的数据库迁移更具可预测性。使用 DMS 架构转换来评测源数据提供程序的迁移复杂性,然后用来转换数据库架构和代码对象。然后,您可以将转换后的代码应用于目标数据库。

DMS 架构转换会自动将源数据库架构和大部分数据库代码对象转换为与目标数据库兼容的格式。此转换包括表、视图、存储过程、函数、数据类型、同义词等。任何 DMS 架构转换无法自动转换的对象都会被明确标记。要完成迁移,您可以手动转换这些对象。

简而言之,DMS 架构转换由以下三个组件运行:实例配置文件、数据提供程序和迁移项目。实例配置文件指定网络和安全设置。数据提供程序存储数据库连接凭证。迁移项目包含数据提供程序、实例配置文件和迁移规则。Amazon DMS 使用数据提供程序和实例配置文件,设计转换数据库架构和代码对象的流程。

有关支持的源数据库的列表,请参阅 DMS 架构转换的源

有关支持的目标数据库列表,请参阅DMS 架构转换的目标

下图阐明了 DMS 架构转换过程。


            DMS 架构转换功能的架构图。

通过以下主题更好地了解如何使用 DMS 架构转换。

支持 Amazon Web Services 区域

您可以在以下 Amazon Web Services 区域中创建 DMS 架构转换迁移项目。在其他区域,您可以使用 Amazon Schema Conversion Tool。有关 Amazon SCT 的更多信息,请参阅 Amazon Schema Conversion Tool 用户指南

区域名称 区域
美国东部(弗吉尼亚州北部) us-east-1
美国东部(俄亥俄州) us-east-2
美国西部(俄勒冈州) us-west-2
亚太地区(东京) ap-northeast-1
亚太地区(新加坡) ap-southeast-1
亚太地区(悉尼) ap-southeast-2
欧洲地区(法兰克福) eu-central-1
欧洲地区(斯德哥尔摩) eu-north-1
欧洲地区(爱尔兰) eu-west-1

架构转换功能

DMS 架构转换提供以下功能:

  • DMS 架构转换会自动管理您的数据库迁移项目所需的 Amazon Web Services 云 资源。这些资源包括实例配置文件、数据提供程序和 Amazon Secrets Manager 密钥。它们还包括 Amazon Identity and Access Management (IAM) 角色、Amazon S3 存储桶和迁移项目。

  • 您可以使用 DMS 架构转换来连接到源数据库、读取元数据和创建数据库迁移评测报告。然后,您可以将报告保存到 Amazon S3 存储桶。借助这些报告,您将大致了解您的架构转换任务,以及 DMS 架构转换无法自动转换为目标数据库的项目的详细信息。数据库迁移评测报告有助于评估 DMS 架构转换可以自动执行多少迁移项目。此外,这些报告还有助于估算完成转换所需的手动工作量。有关更多信息,请参阅使用 DMS 架构转换创建数据库迁移评测报告

  • 连接到源和目标数据提供程序后,DMS 架构转换可以将您的现有源数据库架构转换为目标数据库引擎。您可以从源数据库中选择要转换的任何架构项目。在 DMS 架构转换中转换数据库代码后,您可以查看源代码和转换后的代码。此外,您还可以将转换后的 SQL 代码保存到 Amazon S3 存储桶。

  • 在转换源数据库架构之前,您可以设置转换规则。您可以使用转换规则更改列的数据类型、将对象从一个架构移动到另一个架构以及更改对象的名称。您可以将转换规则应用到数据库、架构、表和列。有关更多信息,请参阅 设置转换规则

  • 您可以更改转换设置以提高转换后代码的性能。这些设置特定于每个转换对,并且取决于您在代码中使用的源数据库的功能。有关更多信息,请参阅指定架构转换设置

  • 在某些情况下,DMS 架构转换无法将源数据库功能转换为等效的 Amazon RDS 功能。对于这些情况,DMS 架构转换会在目标数据库中创建一个扩展包,以模拟未转换的功能。有关更多信息,请参阅使用扩展包

  • 您可以将转换后的代码和扩展包架构应用于目标数据库。有关更多信息,请参阅应用转换后的代码

  • DMS 架构转换支持最新 Amazon SCT 版本中的所有功能。有关更多信息,请参阅 Amazon SCT 的最新发行说明

架构转换限制

DMS 架构转换是 Amazon Schema Conversion Tool (Amazon SCT) 的 Web 版本。与 Amazon SCT 桌面应用程序相比,DMS 架构转换支持的数据库平台更少,提供的功能也更有限。要转换数据仓库架构、大数据框架、应用程序 SQL 代码和 ETL 流程,请使用 Amazon SCT。有关 Amazon SCT 的更多信息,请参阅 Amazon Schema Conversion Tool 用户指南

使用 DMS 架构转换进行数据库架构转换时,存在以下限制:

  • 您无法保存迁移项目并在离线模式下使用。

  • 对于 DMS 架构转换的迁移项目,您无法编辑源数据库和目标数据库的 SQL 代码。要编辑源数据库的 SQL 代码,请使用常规 SQL 编辑器。选择从数据库刷新,将更新的代码添加到您的迁移项目中。要编辑转换后的代码,请将其另存为 SQL 脚本。然后在代码编辑器中进行编辑,并将更新后的代码手动应用到您的数据库。

  • DMS 架构转换中的迁移规则不支持更改列排序规则。此外,您不能使用迁移规则将对象移动到新架构。

  • 您不能对源数据库树和目标数据库树应用筛选器以仅显示符合筛选子句的数据库对象。

  • DMS 架构转换扩展包不包含 Amazon Lambda 函数,该函数在转换后的代码中模拟电子邮件发送、作业调度和其他功能。

  • DMS 架构转换不使用客户管理的 KMS 密钥来访问任何客户 Amazon 资源。例如,DMS 架构转换不支持使用客户管理的 KMS 密钥访问 Amazon S3 中的客户数据。