作者:MeshCloud脉时云公有云架构师 陈博文
引言
随着云时代的到来与成熟,很多互联网公司决定将自己的业务上云,其中的数据是各个互联网公司的重中之重,如何将本地数据库中的数据快速、安全的迁云也是各个公司关注的重点.这里就来介绍一款可以简化您的迁移,只需单击几下鼠标,您就可以开始迁移,并拥有单一的、集成的迁移体验的迁移工具Google CLoud Data Migration Service(DMS)
技术简介
迁移是将数据和元数据从源数据库移动到目标数据库的过程。迁移完成后,目标数据库成为主数据库,依赖应用程序对其进行读写,源数据库可以关闭。
持续(有时称为持续或在线)迁移是在初始完整转储和加载之后从源到目标的持续更改流。因此,源和目标之间的复制已完成,并且目标 Cloud SQL 实例已准备好用作独立的主实例。在源和目标同步时进行切换可以最大限度地减少停机时间。
目标
迁移本地MySQL到Google Cloud SQL
准备工作
1、源端创建用户并赋权(只需要SELECT和SHOW VIEW)
可根据自己的情况修改。因为此方案中 Cloud SQL 的 ip是随机分配的所以这里写的%
2、创建迁移配置文件(profile)
用于数据库迁移的配置文件
点击 左上角下拉菜单 — 更多产品 — 数据库 — 数据库迁移 — 连接配置文件 —- +创建配置文件
点击之后 只有数据库选择 选择数据库后 出现下图
实施步骤
1、迁移(创建迁移作业时如果退出或者误关页面,可以在草稿中找到任务并继续)
2、配置文件选第二步的
3、创建目标数据库
4、测试连接
5、开始迁移
6、迁移完毕,进行验证
验证
进入数据库— SQL,可以看到刚才创建的目标数据库已经有数据了
验证无误后就可将主库切换到云上的数据库了
注意事项
1、业务影响
迁移过程中,源端数据库的负载会增加,若源端资源(CPU 内存 磁盘)资源不足则谨慎开始任务,以免对正在进行的业务造成影响
解决方案:建议如果业务允许停止业务进行迁移。或选择业务低峰时间进行迁移
2、操作限制
迁移过程中源端建议不要使用DDL操作,以免发生报错,导致迁移失败
解决方案:不使用DDL操作
3、其它
- 源端BINLOG必须是开启且为ROW模式,其它模式会报错
- MySQL 系统数据库不会作为服务器迁移的一部分进行迁移,这意味着有关用户角色的信息不包括在内