数据库迁移是一项复杂且耗时的工程,您不仅需要考虑迁移过程中数据的安全性和完整性,还需要评估因数据库迁移而导致的业务中断所带来的影响。为了更快捷、更平滑地完成数据库迁移任务,您可以使用阿里云数据传输服务DTS辅助您的迁移工作,其能在保证数据传输快速且完整的情况下,将应用停机时间降低到分钟级别,让您更专注于迁移后的业务发展。同时,您也可以对自建数据库进行全量备份,使用备份文件恢复数据库至RDS MySQL实例,实现数据库的间接迁移上云。
费用说明
创建RDS MySQL实例会产生实例规格费用与存储费用,其与实例的付费方式、系列、规格、存储类型和存储空间大小等参数相关,详情请参见RDS MySQL计费项。
(方法一:使用DTS迁移至RDS MySQL实例)使用DTS进行数据迁移时会产生链路配置费用,其与任务时间、链路规格等参数相关,详情请参见数据传输服务DTS计费项。
(方法二:使用全量备份恢复至RDS MySQL实例)自建数据库全量备份上传至OSS会产生存储费用,详情请参见OSS存储费用。
准备工作
您可以直接使用前两篇教程中创建的RDS MySQL实例进行本教程中的操作。如实例已释放,您可以再次购买RDS MySQL实例并创建高权限账号dbuser
,详细教程请参见第一步:快捷创建RDS MySQL实例与配置数据库。
方法一:使用DTS迁移至RDS MySQL实例
数据传输服务DTS(Data Transmission Service)是阿里云提供的实时数据流服务,支持关系型数据库(RDBMS)、非关系型的数据库(NoSQL)、数据多维分析(OLAP)等数据源间的数据交互,集数据同步、迁移、订阅、集成、加工于一体,助您构建安全、可扩展、高可用的数据架构。
本教程以ECS自建数据库为例,展示如何创建与配置DTS数据迁移任务,将自建数据库平滑迁移至RDS MySQL实例。
从自建数据库向RDS MySQL迁移时,建议保持ECS实例与RDS实例在同一地域与同一VPC下(实例满足内网访问条件),使数据迁移过程更快速且稳定。
使用DTS进行数据迁移时的相关限制和注意事项请参见从自建MySQL迁移至RDS MySQL实例。
登录DMS数据管理服务。
在顶部菜单栏选择
。如果顶部没有菜单栏,可以在右上角退出极简模式。单击创建任务跳转至任务配置页面。
配置源库与目标库信息。
配置源库参数
本教程中的源库指您的原业务数据库,即ECS实例中的自建数据库。
数据库类型:选择MySQL。
接入方式:选择ECS自建数据库。根据部署位置的不同,自建数据库可以划分为部署在ECS的自建数据库与部署在本地的自建数据库。针对不同场景,DTS提供了多种接入方式满足数据库迁移需求,详情请参见各接入方式准备工作:
自建库部署位置
公网访问
DTS接入方式(同迁移任务配置)
ECS(已在云上)
均可
ECS自建数据库
本地(未上云)
具备公网地址
公网IP
不具备公网地址
云企业网CEN、数据库网关DG、专线/VPN网关/智能网关
实例地区:选择ECS实例所在地域。
ECS实例ID:在下拉列表中选择待迁移的ECS实例。
端口:默认为
3306
。数据库账号和数据库密码:填写ECS自建数据库中用于数据迁移或拥有相关权限的账号和密码。如未准备,您可以新建账号并授予相关权限,详细步骤请参见为自建MySQL创建账号。
连接方式:如果自建数据库未开启SSL加密,选择非加密连接;如果已开启SSL加密,选择SSL安全连接,并上传CA 证书和CA 密钥。
配置目标库参数
本教程中的目标库指云数据库RDS MySQL实例,您需要将源库迁移至该数据库。
数据库类型:选择MySQL。
接入方式:选择云实例。
实例地区:选择RDS实例所在地域,本教程以华东1(杭州)为例。
RDS实例ID:在下拉列表中选择准备工作中创建的RDS MySQL实例ID。
数据库账号和数据库密码:填写RDS MySQL实例中高权限账号和密码,本教程以
dbuser
和用户自定义密码为例。连接方式:本教程以非加密连接为例。如果选择SSL安全加密,您需要提前开启RDS MySQL实例的SSL加密功能,详情请参见使用云端证书快速开启SSL链路加密。
单击测试连接以进行下一步。DTS会自动为ECS实例添加DTS安全组,并将DTS服务器IP添加至RDS实例白名单中,以允许DTS访问ECS实例和RDS实例。
配置任务对象。
预检查通过率达到100%后,单击下一步购买。
选择数据迁移实例的链路规格,本教程以small规格为例。阅读并选中《数据传输(按量付费)服务条款》,单击购买并启动。
迁移任务正式开始,您可以单击迁移任务ID查看具体进度。当您看到如下界面,表示存量数据已迁移完成,增量数据会实时同步。后续您可以验证全量数据和增量数据的迁移结果,确认无误后,您可以将业务流量切换至RDS MySQL实例,实现自建库迁移至RDS MySQL实例。
方法二:使用全量备份恢复至RDS MySQL实例
RDS MySQL支持全量备份导入与恢复功能。您可以使用Percona XtraBackup与MySQL Backup Helper工具对自建数据库进行全量备份并上传至OSS,然后将全量备份文件从OSS导入RDS控制台,通过数据库恢复功能将其恢复至新实例中,实现自建数据库间接迁移至RDS MySQL实例。详细操作请参见MySQL 5.7、8.0自建数据库全量上云。