AWS数据库迁移服务(DMS)详解

AWS数据库迁移服务(DMS)是一项云服务,它简化了将本地数据库迁移到云端的过程,并且可以将停机时间降到最低。DMS能够监控原始数据库的变更,并将这些变更应用到新数据库中。DMS支持多种数据库,包括MySQL、PostgreSQL、Oracle、SQL Server、Microsoft SQL Server和Amazon Aurora。DMS的一个优势是原始数据库和新数据库不必相同,因此可以轻松地将一种类型的数据库转换为另一种类型。DMS负责所有繁琐的数据导出和导入任务,大大减少了迁移时间。它支持数据库开发、整合和测试等数据迁移任务。在迁移过程中,源数据库将保持完全运行状态,从而将对依赖数据库的应用程序的停机时间降到最低。本文将概述DMS的工作原理、迁移数据的过程以及为什么应该考虑使用DMS进行迁移。

什么是AWSDMS?

AWS数据库迁移服务(AWS DMS)帮助快速将数据库迁移到AWS。它允许迁移多种数据库,包括关系型、非关系型数据库以及其他类型的商业和开源数据库。DMS持续监控源和目标数据库以及网络连接。如果出现中断导致复制任务停止,DMS将自动修复。它可以通过流式传输数据到AWS Redshift和Amazon S3来整合不同的数据库到一个多PB级的数据仓库中。

为什么选择AWSDMS进行数据迁移?

高弹性:DMS可以自动备份快照并迅速恢复。如果主复制服务器失败,备份复制服务器将接管,因此没有服务中断。

最小化停机时间:通过DMS迁移数据库时,源数据库将保持完全运行状态,最小化对依赖数据库的应用程序的停机时间。因此,用户可以在需要时更换数据库,无需关闭。

低成本:DMS提供免费迁移服务,将数据库迁移到Redshift、Aurora、DynamoDB或DocumentDB。用户需要为迁移到其他数据库支付费用,具体取决于日志存储量。

全面的数据库支持:DMS支持同构迁移,如Oracle到Oracle,以及使用SCT工具的异构迁移,如Oracle到Aurora平台。它支持开源和商业数据库,方便数据库迁移。

故障转移支持:DMS部署在多AZ环境中,有助于故障转移支持和轻松可用性。在多AZ部署中,DMS自动维护并在不同的可用区中提供复制实例的同步备用副本。

AWS DMS流程 - 如何工作

连接端点:首先,将DMS连接到源和目标端点。DMS的主要要求是,用户的端点必须托管在AWS服务上。在执行迁移时,端点凭据应成功连接到数据库并具有必要的权限。

任务调度:现在,安排一个在服务器上运行的任务来迁移数据。DMS从源数据库读取数据并为目标数据库做准备。当源数据传输到目标数据库时,会发生全量迁移。

同步数据库:如果在源数据库进行了更改,它将被缓存在复制服务器上。全量迁移完成后,这些缓存的更改将应用于目标数据库,以保持两个数据库的同步。

支持的数据库类型

AWSDMS可以与其他AWS服务一起使用,包括:

Amazon EC2和RDS:用户可以将Amazon EC2或RDS数据库实例作为数据迁移的目标。EC2是代表物理服务器的虚拟机,提供安全且可扩展的计算能力。RDS是指允许在任何地方访问文件和数据库的SQL数据库服务。

AWS Schema Conversion Tool:AWS Schema Conversion Tool(SCT)可以自动将源模式转换为目标数据库兼容的格式。使用SCT,用户可以迁移数据库模式,包括存储过程、视图、函数等,到兼容的目标数据库。

Amazon S3:对于存储目的或在迁移大量数据时,Amazon S3可以在中间步骤中使用。用户可以设置数据库迁移任务,将特定数据传输到S3存储桶。

AWS CloudFormation:AWS CloudFormation可以设置AWS资源以进行基础设施部署或管理。使用CloudFormation模板,用户可以创建、删除和修改整个堆栈(AWS资源的集合)作为一个单独的单元或跨多个AWS账户和区域的堆栈,而无需单独管理资源。

AWS数据库迁移服务的组成部分

DMS主要有以下三个组成部分:

复制实例:Amazon EC2(弹性计算云)管理的实例托管一个或多个复制作业。它处理计算密集型工作负载、异构迁移和复制,如从Oracle迁移到PostgreSQL。内存优化的复制实例,如R4/R5,有助于中等规模的内存数据库、实时大数据分析和企业应用。

源和目标端点:端点连接源和目标数据库,帮助传输数据。所有端点都需要信息,如服务器名称、端口号、端点类型、引擎类型、凭据等。在使用端点进行数据库迁移任务之前,用户应该测试端点连接。

复制任务:这是开始迁移之前的最后一步,它将数据从源端点传输到目标端点。它表示在目标和源端点之间传输的数据以及何时执行迁移。

同构数据库迁移:在这种迁移中,源和目标数据库引擎应该匹配并且可以互操作。例如,Microsoft SQL Server到Amazon RDS for SQL Server,Oracle到Amazon RDS for Oracle,MySQL到Amazon RDS for MySQL,MySQL到Amazon Aurora等。

异构数据库迁移:在这种迁移中,源和目标数据库引擎不互补。这里需要一个模式和代码转换步骤来解决源和目标数据库之间的数据库代码、数据类型和模式结构的差异。例如,Oracle到PostgreSQL,Oracle到Amazon Aurora,Microsoft SQL Server到MySQL迁移等。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485