微信二维码

二维码 扫二维码马上关注
扫码咨询
云迁移不停机服务:阿里云DTS

        越来越多的企业客户选择迁移到云上,以充分利用云的便捷性和高可靠性。然而,对于许多客户来说,迁移到云时遇到的第一个问题是顺利完成云迁移而不影响业务。许多传统迁移解决方案要求企业在迁移期间停止服务,这会影响业务连续性。

        阿里云数据传输服务(DTS)能够在不停止服务的情况下进行数据迁移,这意味着云迁移已经完成,而源数据库提供业务的正常服务。在本文中,我们将讨论云迁移的原则和过程,并解释使用阿里云的DTS的好处。

 

一、停止服务后的迁移——传统的数据库迁移解决方案

        市场上出现了各种数据库引擎,以满足不同的用户场景。为了满足用户导入数据的需求,数据库供应商通常有自己的数据迁移工具。例如:MySQL使用mysqldump, Oracle使用exp/imp。然而,传统的迁移工具通过数据导出和导入来实现现有数据的迁移。为了确保迁移的数据的完整性,通常会停止源数据库服务,并且服务停止的时间取决于迁移现有数据所需的时间。这可能需要几个小时,并且导致用户的迁移成本非常高。


二、不停止服务的迁移——阿里云DTS

        阿里云提供了一种名为数据传输服务(DTS)的迁移服务,以降低用户的迁移成本。DTS支持关系数据库、NoSQL和大数据(OLAP)等数据源之间的数据传输。它是一个数据传输服务,集成了数据迁移、数据日志实时订阅和实时数据同步。
        DTS提供不停止服务的数据迁移,支持在不停止与源数据库相关的服务的情况下顺利完成数据库数据的迁移。用户可以在不同的场景中应用数据迁移:

        1、将自建数据库从离线IDC机房迁移到阿里云RDS或ECS上的自建数据库。

        2、 将自建数据库从其他云供应商迁移到阿里云RDS或ECS上的自建数据库。

        3、跨地区和账户迁移阿里云上的数据库。

        4、将阿里云RDS或ECS上自建的数据库迁移到离线IDC测试环境。

        除了数据迁移之外,DTS还帮助完成各种业务场景,例如数据灾难备份、多idc-live、业务数据与数据仓库的实时同步、异步消息通知和缓存更新。

        DTS支持数十个数据源,包括Oracle、MySQL、SQLServer、PostgreSQL、DB2、Redis和MongoDB。为成千上万的企业客户提供数据传输服务。

 

 

        DTS迁移过程

       
        使用DTS在不停止服务的情况下执行数据库迁移的一般过程分为以下几个阶段:

        1、准备,包括目标数据库的准备、源数据库的准备和目标数据库的迁移帐户的准备。

        2、模式迁移:DTS将源数据库的模式对象迁移到目标数据库。

        3、完整的迁移。DTS将历史数据从源数据库迁移到目标数据库。

        4、增量迁移。DTS将增量数据从源数据库迁移到目标数据库。增量迁移分为两个步骤:增量数据获取和增量数据同步。为了保证迁移数据的完整性,DTS与模式迁移同时启动增量数据获取,并实时捕获模式迁移和完全迁移过程中源实例生成的增量数据。

        5、数据验证。用户验证源数据库和目标数据库之间迁移数据的一致性。

        6、业务切换。选择业务的低峰值期,当DTS增量迁移没有延迟时,将业务指向目标数据库。

        在整个数据迁移期间,源数据库通常提供服务,但在业务切换阶段将业务指向目标数据库。

 

三、DTS迁移的基本原则

        在本节中,我们将介绍每个迁移阶段的基本技术原则。

        1. 模式迁移:在模式迁移阶段,DTS根据源实例的模式定义(例如表和视图)在目标实例上生成模式。如果源实例和目标实例是异构数据源,那么DTS需要根据目标实例的模式语法转换数据类型和SQL语法。对于与目标数据源不兼容的对象,您可以在DTS控制台中手动更正它们——在将它们与目标实例同步之前的迁移详细信息。

        2. 完全迁移:在整个迁移阶段,DTS将历史数据从源数据库迁移到目标实例。表碎片技术允许同时执行表中的碎片,从而最大限度地提高迁移速度。DTS还支持可恢复上传。当迁移由于网络问题(源实例或目标实例)而中断时,DTS可以在问题解决后从断点恢复数据传输,这大大减少了迁移工作负载。

        3.增量迁移:增量迁移阶段,DTS实时捕获源数据库上的数据更改,并将其与目标数据库实时同步。通过死锁算法,DTS可以实现基于事务级的并发写策略,在保证事务顺序性的同时,有效地提高同步性能。

 

四、迁移过程——完成数据库迁移的3个步骤

        使用DTS,用户只需3个步骤就可以完全配置整个任务。下面我们将通过一个案例演示DTS的使用,该案例涉及将数据从另一个云供应商的RDS迁移到阿里的云RDS。

        准备工作:在配置DTS任务之前,需要启用其他云供应商的RDS实例的外部网络地址。除了通过公共网络访问之外,DTS还支持通过私有线路和VPN网关等硬件设备访问其他云供应商的RDS实例。

        执行迁移:打开阿里云DTS控制台,点击右上角的Create Migration Task开始任务配置。

        步骤1:为源MySQL实例配置连接信息,为MySQL实例配置目标RDS。此步骤包括设置迁移任务名称,并为迁移中涉及的源和目标实例配置连接信息。详情如下:

        任务名称:默认情况下,DTS自动为每个任务生成一个名称。任务名称不需要是惟一的,并且可以修改。建议使用表明任务的特定业务的名称,以便于标识任务。

        您需要提供源实例连接信息,包括:

       1、 实例类型:选择具有公共网络IP的自构建实例。

        2、数据库类型:选择MySQL。

        3、主机名或IP地址:为另一个云供应商上的RDS MySQL配置外部网络地址。

        4、端口:为另一个云供应商上的RDS MySQL配置实例监听端口。

        5、Account:为另一个云供应商上的MySQL配置实例访问帐户。

        6、密码:配置与另一个云供应商上的MySQL访问帐户对应的密码。

        您还需要为MySQL实例连接信息配置目标RDS。目标实例为阿里云RDS配置实例连接信息。具体配置信息如下:

        1、实例类型:选择一个RDS实例

        2、 RDS实例ID:要将数据迁移到的目标RDS实例的实例ID。DTS支持使用经典网络和VPC网络对MySQL实例进行RDS

        3、数据库帐户:用于MySQL实例的RDS的连接帐户

 

        4、数据库密码:与上面指定的数据库帐户对应的数据库密码

        步骤2:配置迁移对象和迁移类型

        迁移类型:DTS支持模式迁移、完全迁移和增量迁移。要在不停止服务的情况下迁移,请选择:模式迁移+完整迁移+增量迁移。

        迁移对象:选择要迁移的对象。迁移对象可以是数据库、表或列。配置迁移对象和迁移类型之后,将启动迁移任务的预检查。

        步骤3:迁移预检查

        在开始迁移任务之前,需要进行预检查。为了启动迁移,需要成功地传递预检查。

        通过预检查之后,就可以开始迁移任务了。任务启动后,您可以在任务列表中查看特定的迁移状态和进度。

        这就完成了将数据从另一个云供应商的MySQL数据库实例迁移到用于MySQL实例的阿里云RDS的任务的配置。


结论

        介绍了阿里云数据传输服务(DTS)的基本原理和数据库迁移过程。您已经了解到,DTS是一种方便、安全和高效的数据库迁移工具,您可以根据DTS在不停止服务的情况下执行迁移的能力轻松地开始迁移到云。

        除了数据迁移功能,DTS还支持数据库日志的实时订阅和数据的实时同步。通过这些功能,用户可以实现数据灾难备份、多idc-live、业务数据到数据仓库的实时同步、异步消息通知和缓存更新等业务场景。由于篇幅有限,这里不作详细介绍。
        最后,阿里云推出了很多优惠活动,在购买阿里云产品之前,请先领取阿里云代金券阿里云学生优惠券来获得更多的优惠!


更多精彩内容请,请关注元 吉优惠券网:专注阿里云代金券阿里云服务器报价腾讯云代金券的免费领取!
更多精彩内容推荐:
阿里云弹性裸金属服务器(神龙版)
阿里云新用户大礼包 
阿里云代金券升级版(通用礼包2000元免费领取) 
阿里云代金券查询和使用方法 
阿里云服务器学生优惠购买和配置方法


在线客服
热线电话

扫一扫 微信加好友