简述
最近项目要进行数据的迁移,考虑到传统的脚本文件备份实在是太慢,就在网上找了找有没有直接复制MySQL数据文件的方法,没想到居然还真有。不过都是同版本之间的迁移,不同版本间的好像还没有。我把自己踩过的坑简单介绍如下。
准备工作
1.备份要被迁移的数据库MySQL 5.6 A 的数据;
2.备份要迁移到的数据库MySQL 5.7 B 的数据;
3.备份完成后,要停掉B服的数据库,A服可关闭,也可停止;
开始迁移
开始迁移数据库的时候一定要备份好自己的数据,不然迁移失败,就等着哭去吧。
1.找到MySQL 5.6 A 中的Data目录,并压缩成压缩包
2.在B服中找到MySQL 的Data文件,重命名为Data_102;再将data(2).zip解压到该文件夹下,重命命为Data(因为在my.ini有个基础库路径,所以必须这样命名,你也可以修改该配置文件,来修改基础库路径。这里是不改变基础库的路径)。
3.复制Data_102中的 performance_schema文件到Data中,替换掉Data原来已有的performance_schema,同时删除Data中的ib_logfile0,ib_logfile1这两个文件。
4.重启MySQL 5.7 B服的数据库,成功启动后,用连接工具连接,测试成功后,便完成了数据的迁移。(注意点:这个方法是将MySQL 5.6的库完全替换掉了MySQL 5.7的库,所以在连接测试时,MySQL账户和密码时MySQL 5.6 A库的账户和密码,所以在库B中,如果还存需要使用的数据,请备份好。)
参考文章:
[1]: https://blog.csdn.net/lx1309244704/article/details/80478210