问:Amazon Database Migration Service 能否帮助我将 Oracle PL/SQL 和 SQL Server T-SQL 代码转换为 Amazon Aurora 或 MySQL 和 PostgreSQL 存储程序?
可以,Amazon Database Migration Service 的中包含免费的 Amazon Schema Conversion Tool (SCT),该工具可自动将 Oracle PL/SQL 和 SQL Server T-SQL 代码转换为 Amazon Aurora/MySQL 方言中的等效代码或 PostgreSQL 中的等效 PL/pgSQL 代码。当代码片段无法自动转换为目标语言时,SCT 将清楚地记录所有需要应用程序开发人员手动输入的位置。
问:如何开始使用 Amazon Database Migration Service?
Amazon Database Migration Service 的使用既快速又简单。大多数数据复制任务都可在 10 分钟内完成设置。访问亚马逊云科技管理控制台的 Amazon Database Migration Service 部分,然后进入“开始迁移”向导。指定源数据库终端节点和目标数据库终端节点,选择现有复制实例或创建新实例,然后接受默认架构映射规则或定义您自己的转换。完成向导后,数据复制将立即启动。
问:除了一次性数据迁移之外,我还可以使用 Amazon Database Migration Service 进行连续数据复制吗?
可以,您可以使用 Amazon Database Migration Service 将数据一次性迁移到基于 RDS 和 EC2 的数据库中,也可以将该服务用于连续数据复制。Amazon Database Migration Service 将捕获源数据库上的更改,并以事务性一致的方式将其应用到目标数据库。连续复制可以有两种方式,从您的数据中心复制到亚马逊云科技的数据库中,也可以反过来,从亚马逊云科技的数据库复制到数据中心的数据库中。此外,还可在同构数据库或异构数据库之间进行持续的连续复制。对于持续复制,最好使用多可用区来实现高可用性。
问:Amazon Database Migration Service (DMS) 和 Amazon Schema Conversion Tool (SCT) 有何关联?
DMS 和 SCT 协同工作,既可以迁移数据库,又支持针对各种用途的持续复制,例如填充数据集市、同步系统等。SCT 可以复制数据库架构用于同构迁移,也可以转换数据库架构用于异构迁移。架构可在数据库之间迁移(例如 从 Oracle 迁移到 PostgreSQL),也可在数据仓库之间迁移(例如 从 Netezza 迁移到 Amazon Redshift)。
在空的目标数据库上创建架构后,根据数据量和/或支持的引擎,使用 DMS 或 SCT 来迁移数据。以往而言,DMS 会迁移较小的关系型工作负载 (<10 TB) 和 MongoDB,而 SCT 主要用于迁移大型数据仓库工作负载。DMS 支持持续复制,以使目标数据库与源数据库系统同步;SCT 则不支持持续复制。
问:Amazon Database Migration Service 支持哪些源数据库和目标数据库?
异构数据复制。源数据库或目标数据库(或两者)都需要驻留在 RDS 中或 EC2 上。不支持在本地部署数据库之间进行复制。
问:Amazon Schema Conversion Tool 支持哪些源数据库和目标数据库?
Amazon Schema Converstion Tool (SCT) 支持此处列出的一系列数据库和数据仓库转换。请注意,SCT 可用于:
问:为什么我需要使用 Amazon Database Migration Service 来代替我自己的自行管理式复制解决方案?
Amazon Database Migration Service 简单易用。与必须安装和配置的自行管理式复制解决方案相比,只需几分钟即可设置完复制任务,而不是几小时或几天。Amazon Database Migration Service 会监控复制任务、网络或主机故障,并在出现无法修复的故障时自动预置主机更换。Amazon Database Migration Service 的用户不必像自行管理式解决方案那样,过度预置容量并投资于昂贵的硬件和复制软件。借助 Amazon Database Migration Service,用户可以利用按需定价的优势,根据负载情况,扩展或缩减其复制基础设施。Amazon Database Migration Service 数据复制与 Amazon Schema Conversion Tool 紧密集成,简化了异构数据库迁移项目。
问:能否为我总结一下使用 Amazon Database Migration Service 的数据库迁移步骤?
在典型的简单数据库迁移过程中,您将创建目标数据库、迁移数据库架构、设置数据复制过程、启动满载和随后的变更数据捕获和应用,最后在目标数据库赶上源数据库后,将生产环境切换到新的数据库。
问:对于连续数据复制,这些步骤是否有所不同?
唯一的区别在于最后一步(生产环境切换),连续数据复制没有这一步。您的数据复制任务将一直运行,直到您更改或终止该任务。
问:我能否监控数据库迁移任务的进度?
可以。Amazon Database Migration Service 在亚马逊云科技管理控制台中显示了各种指标。它提供了数据复制过程的端到端视图,包括复制管道中每个点的诊断和性能数据。Amazon Database Migration Service 还与其他亚马逊云科技服务(例如 CloudTrail 和 CloudWatch Logs)集成。客户还可以利用 Amazon Database Migration Service API 和 CLI 与其现有工具集成,或构建自定义监控工具以满足其特定需求。
问:如何将 Amazon Database Migration Service 与其他应用程序集成?
Amazon Database Migration Service 提供了一个预置 API,可以直接从您的开发环境创建复制任务,或在一天中的计划时间内编写复制任务的创建脚本。通过服务 API 和 CLI,开发人员和数据库管理员可自动执行复制任务的创建、重启、管理和终止过程。
问:我能否从加密数据源复制数据?
可以,Amazon Database Migration Service 可以对加密数据库进行读写操作。Amazon Database Migration Service 连接到 SQL 接口层上的数据库终端节点。如果您使用 Oracle 或 SQL Server 的透明数据加密功能,Amazon Database Migration Service 将能够从这些源数据库中提取解密的数据并将其复制到目标数据库。这同样适用于存储级别的加密。只要 Amazon Database Migration Service 拥有正确的数据库源凭证,它就能够连接到源数据库并将数据(以解密形式)传到目标数据库。我们建议在目标数据库上使用静态加密,以保护信息的机密性。如果您使用应用程序级加密,则数据将通过 Amazon Database Migration Service 以加密格式按原样传输,然后插入目标数据库。
问:Amazon Database Migration Service 是否会为我迁移数据库架构?
要将数据库架构快速迁移到目标实例,您可以借助 Amazon Database Migration Service 的基本架构复制功能来实现。如果目标实例中已不包含同名的表,“基本架构复制”功能将在目标实例中自动创建表和主键。“基本架构复制”功能非常适合进行测试迁移,或者在异构迁移数据库时也非常适合使用此功能,例如从 Oracle 迁移到 MySQL 或将 SQL Server 迁移到 Oracle。“基本架构复制”功能不会迁移二级索引、外键或存储过程。当您需要使用更加可定制的架构迁移过程时(例如,当您迁移生产数据库并需要移动存储过程和备用数据库对象时),可以使用 Amazon Schema Conversion Tool 进行同构迁移和异构迁移,或者如果您正在执行同构迁移,例如 (1) SQL Server Management Studio 的导入和导出向导、(2) Oracle 的 SQL 开发人员数据库导出工具或使用 dbms_metadata 包编写导出脚本、(3) MySQL 的 Workbench 迁移向导,则使用源数据库引擎原生的架构导出工具。