数据库迁移常见的四种方法

2022-07-22 10:07:39 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

数据的迁移就像搬家,基本每个用过手机的人都做过数据迁移,将旧智能手机中的电话号码、照片、微信聊天记录导入到另一台新的智能手机。因此数据迁移并不神秘。在上云的过程中,因数据的量更大、数据重要性更大、专业性更强,因此在公有云上诞生了“云迁移”这项目服务,在公有云市场也有上百个云服务商专业做“云迁移”服务。今天我们来讲三种常用的云数据库迁移方法。

一、为什么做云迁移?

1、更换服务器、更换云服务商。如,某台服务器故障,需要更换为新服务器;从私有云环境更换为公有云环境。

2、应用的数据器升级、更换类型。如,将oracle更换为mysql。

可以说做云迁移,就像更换手机一样,发生的概率还是挺高的,我们有必须要掌握必要的迁移技能。

二、云迁移里面最重要的是数据迁移

1、数据价值最高,不能丢失。应用服务器里不带有价值的数据,可以直接采用重新安装或整盘拷贝的方式迁移,难度不大。但数据库服务器的数据可以说是整个企业的财产关键。

2、数据迁移的难度最大。数据库的版本升级将可以带来应用的不可用,因此迁移至新服务器,如果使用了云服务商的RDS,版本不一致,应用无法使用的概率挺大。

三、数据库迁移总体有三种方法

我们今天以mysql为例,讲讲数据库迁移的四种方法。

1、将数据库倒出为sql文件,再重新导入(推荐)

首先将mysql数据库锁定,并将内存中的数据写入磁盘。

用mysqldump将test数据库导出为sql文件。

在新的数据库服务器上,新建test数据库,再将sql文件导入。

该方法因采用sql命令进行数据库迁移,兼容性最好,准确性最高,但速率最慢。

2、将数据库的文件存档目录直接拷贝至新主机

可以直接将mysql存储数据的目录copy下来,用ftp等方式上传至新主机的对应存储数据的目录下。该操作需要关闭两端的数据库服务,否则将产生错误。

该方法只支持myql的MyIASM的表引擎。该方法迁移速度快,但因Mysql默认采用inno引擎,适用场景少,且数据库版本升级后出错率高。

3、使用第三方数据库迁移工具

mysql有很多第三方的数据库迁移工具,如mysqlhotcopy。此类工具一般支持热迁移(不中断业务,实时写数据),支持物理copy。

该方法迁移速度快,对业务中断时间短,但建议迁移多进行模拟测试,避免意外事件。

甚至有一些第三方的迁移工具支持异构数据库的迁移。

4、使用整盘迁移工具

采用云主机的第三方迁移工具,将整个磁盘文件直接进行迁移。

该方法迁移速度快,对业务中断时间短,但成本高,一般为收费工具。

四、小结

迁移就像搬家,如何保证搬家时间短、搬家途中不损坏或遗失物品、搬家过程更安全,产生了不同的迁移方法。

根据你家里资产的情况,根据不同场景选择搬家的方法,迁移也就是这回事。大家感觉如何?

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/125242.html原文链接:https://javaforall.cn

0 人点赞