从mysql8.0 数据导出至mysql5.7
写这篇帖子的原因:
昨天在本地将数据迁移完后,部署至生产环境报错,数据导入的时候发生问题。
为了避免踩雷所以在本地装的 mysql 5.7,但很奇怪不知道咋回事变成了 8.0版本。
于是乎在迁移至生产环境是出现了字符集的问题。
之前在网上也搜了不少帖子,甚至不知道如何去搜。。搜出来的内容没有很具体到版本。有在命令行进行导出和导入,生产环境无法直接访问,该方法不适合我。
今天在这里做一个简单粗暴的分享。
在开始之前可以先用 **SELECT VERSION();** 查看一下你的mysql版本;
我本机的版本:
生产环境的mysql版本:
-
第一步:将本地mysql 8.0 中的要导出的数据右键,转储SQL文件,选择数据及结构。
-
第二步:将所存储的SQL文件,用编辑器打开(我使用的是Edit)。
-
第三步:批量替换字符集 和 排序规则。
utf8mb4_0900_ai_ci 替换为 utf8_general_ci
CHARSET=utf8mb4 替换为 CHARSET=utf8
-
第四步:将SQL文件传到生产环境,新建一个你要的数据库,字符集选择 utf8 ;排序规则选择 utf8_general_ci,双击点开,右键运行SQL文件,选择刚处理好的SQL文件,编码选择 65001(UTF-8)。
希望可以帮到你。
如需转载,请大大的标明出处。