SQL Server 的异构数据库迁移 - AWS 规范性指导

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

SQL Server 的异构数据库迁移

由于开源数据库和 AWS 等云计算平台的创新和改进,许多组织正在从 SQL Server 等专有(在线事务处理或 OLTP)数据库引擎转向开源引擎。对于任何组织来说,SQL Server 数据库都是任务关键型系统,但与特定供应商锁定则将面临很大风险,并且成本高昂。低运营成本和无许可费是考虑将底层数据库技术转换为开源或 AWS 云原生数据库的有力理由。

迁移出 SQL Server 的其他原因包括供应商锁定期、许可审核、昂贵的许可和成本。因此,许多组织在迁移到 AWS 时选择将其 SQL Server 数据库迁移到开源数据库(例如 PostgreSQL、MySQL 或 MariaDB)或 AWS 云原生数据库(例如 Amazon Aurora 或 Amazon DynamoDB)。

您还可以将 SQL Server 数据仓库数据库迁移到 Amazon Redshift,这是一个快速、完全托管的云数据仓库。Amazon Redshift 已与您的数据湖集成,其性能比任何其他数据仓库快三倍,并且成本比任何其他云数据仓库低 75%。有关更多信息,请参阅 AWS 规范性指导网站上的使用 AWS DMS 将本地 Microsoft SQL Server 数据库迁移到 Amazon Redshift 模式。

要迁移到开源或 AWS 云原生数据库,请根据您拥有的数据类型、访问模式、可扩展性、应用程序实用性和复杂性选择正确的数据库。从 SQL Server 迁移到 PostgreSQL 以及其他开源数据库通常既困难又耗时,并且需要仔细评估、规划和测试。

借助 AWS Database Migration Service (AWS DMS) 和 AWS Schema Conversion Tool (AWS SCT) 等服务,这一过程变得更加简单,这些服务可帮助您将商业数据库迁移到 AWS 上的开源数据库,同时尽可能缩短停机时间。

在异构数据库迁移中,源数据库和目标数据库引擎是不同的,例如从 SQL Server 迁移到 Aurora,或从 SQL Server 迁移到 MariaDB。源数据库和目标数据库中的架构结构、数据类型和数据库代码可能大不相同,因此在数据迁移开始之前,必须对架构和代码进行转换。因此,异构迁移包括两个步骤:

  • 第 1 步。转换源架构和代码,使其与目标数据库相匹配。您可以使用 AWS SCT 进行此转换。

  • 第 2 步。将数据从源数据库迁移到目标数据库。您可以使用 AWS DMS 完成此过程。

Heterogeneous database migration with AWS SCT and AWS DMS

在迁移过程中,AWS DMS 会自动处理主要数据类型转换。源数据库可以位于 AWS 以外的本地服务器,也可以是在 EC2 实例上运行的数据库,也可以是 Amazon RDS 数据库(请参阅 AWS DMS 文档中的数据迁移源)。目标可以是 Amazon EC2、Amazon RDS 或 Aurora 中的数据库。有关使用 MySQL 作为目标数据库的信息,请参阅 AWS 数据库博客上的将 SQL Server 数据库迁移到与 MySQL 兼容的数据库引擎

有关在 AWS 上重构 SQL Server 数据库的更多信息,请参阅 AWS 规范性指导网站上的重新架构模式