全部产品
数据传输服务DTS

使用阿里云自带数据迁移产品DTS从AWS RDS迁移MySQL到阿里云RDS

更新时间:2017-06-07 13:26:11   分享:   

适用场景

本文适用于使用阿里云自带数据迁移产品DTS从AWS RDS迁移MySQL到阿里云RDS。

环境准备

  • 已创建AWS RDS MySQL 5.6 或更低版本。

  • 已创建阿里云RDS MySQL 5.6实例,数据库可用空间大小要有AWS RDS显示的数据大小的2倍以上(因为导入数据库时产生的Binlog,后续会自动清理掉的)。

操作步骤

  1. 设置 AWS RDS 使用外网地址访问,操作步骤如下所示:

    1. 打开AWS RDS Console, 进入要迁移实例的Dashboard页面。记下group id (红框部分),然后在页面左边单击Security Groups

      Dashboard

    2. Security Group页面选择相应的group,红框部分对应第一步的group id。选择Inboud选项卡,单击Edit按钮。

      edit

    3. 在弹出对话框中,Type下拉列表中选择MySQL,Source下拉列表中选择Anywhere,单击Save按钮。

      edit rules

    4. 获取数据库IP地址,回到AWS RDS实例页面,选取并复制数据库地址(Endpoint)。

      ipAddress

  2. 创建阿里云RDS帐号,操作步骤如下所示:

    1. 登录 RDS 管理控制台,选择目标实例。

    2. 选择菜单中的账号管理,单击创建账号,如下图所示。

      创建账号

    3. 输入要创建的账号信息,单击确定,如下图所示。

      账号信息

      • 数据库账号:由2~16个字符的小写字母,数字或下划线组成、开头需为字母,结尾需为字母或数字。

      • 密码:该账号对应的密码,由6~32个字符的字母、数字、中划线或下划线组成。

      • 确认密码:输入与密码一致的字段,以确保密码正确输入。

      • 备注说明:可以备注该账号的相关信息,便于后续账号管理,最多支持256个字符(1个汉字等于2个字符)。

  3. 创建阿里云RDS数据库,操作步骤如下所示:

    1. 选择菜单中的数据库管理,单击创建数据库,如下图所示。

      创建数据库

    2. 输入要创建的数据库信息,单击确定,如下图所示。

      数据库信息

      • 数据库(DB)名称:由2~64个字符的小写字母、数字、下划线或中划线组成,开头需为字母,结尾需为字母或数字。

      • 支持字符集:设置数据库的字符集:utf8、gbk、latin1和utf8mb4。

      • 授权账号:选择该数据库授权的账号。如果尚未创建账号,该值可以为空。

      • 账号类型:选择授权账号后可见,设置该数据库授权给授权账的权限,可以设置为读写或者只读

      • 备注说明:可以备注该数据库的相关信息,便于后续数据库管理,最多支持256个字符(1个汉字等于2个字符)。

  4. 使用DTS进行数据迁移,操作步骤如下所示:

    1. 打开阿里云DTS控制台:DTS控制台,单击数据迁移页签,如下图所示:

      创建迁移任务

    2. 单击创建迁移任务,进入任务配置页面,填写源库信息和目标库信息,如下图所示。

      • 源库连接信息:源库实例类型选择有公网IP的自建数据库,填写对应的源库连接信息。

      • 目标库连接信息:目标实例类型选择RDS实例,填写对应的目标库链接信息。

      源实例

    3. 选择要迁移的对象列表,以及迁移的类型,如下图所示:

      选择迁移对象

      说明:

      • 如果源库应用在迁移过程中有更新,那么可以选择进行增量数据迁移。在左边的迁移对象框中,选择需要迁移的对象,并拖动到右边的选择框中。

      • 如果用户的阿里云RDS上的数据库同AWS上的库名不一致,或者需要修改表名,那么可以在右边已选择对象中单击编辑进行修改。如下图所示:

      DTS4

    4. 单击编辑按钮,进入编辑页面,可以将数据库名修改成目标库数据库的库名。如下图所示:

      编辑

    5. 单击保存,保存之后单击预检查并启动,进入任务预检查。如下图所示:

      预检查

    6. 当预检查成功后,单击启动,任务即启动,可以在任务列表查看任务进度状态。如下图所示:

      启动迁移任务

      说明:当增量迁移无延迟时,AWS和阿里云RDS上面的数据一致,可以停止迁移任务。

      注意:由于AWS会尽最快的速度回收binlog,而增量迁移依赖源库的binlog日志,所以为了防止未被增量同步的binlog日志被清除掉。可以调用AWS RDS的存储过程mysql.rds_set_configurations来设置binlog的保存时间。例如将保存时间延长至一天,调用这个存储过程的命令为:

      1. call mysql.rds_set_configurations(“binlog retention hours 24)
本文导读目录
本文导读目录
以上内容是否对您有帮助?