mysql导入报编码错误问题解决
mysql导入报错 Unknown collation: 'utf8mb4_0900_ai_ci'
背景:从本地数据库中导出mysql文件,在宝塔面板安装的mysql导入的时候报错了,
经网上查询,是因为mysql数据库版本不一致的问题导致
本地版本是8.0.1.6
而生产环境的版本是5.6.4.8
一共有3种解决办法
1、检查mysql数据库的版本,发现两边数据的版本不一致,我本地的版本是5.7的,由上面报错的信息可知数据源mysql的版本是8;
2、由于本地的mysql数据库5.7的版本并不支持“utf8mb4_0900_ai_ci”这种排序规则,而字符集“utf8mb4 -- UTF-8 Unicode”是支持的,所以只需要修改表的排序规则即可;
3、用编辑器打开sql文件,将排序规则“utf8mb4_0900_ai_ci”改为“utf8mb4_general_ci”,重新执行sql文件,执行成功。
刚开始尝试在宝塔面板切换数据库版本,但是由于使用的服务器配置是1核,无法实现
于是使用了第3种方法,在不需要切换版本的情况下,成功导入了mysql文件