我有一个MySQL转储,尝试将其恢复为:
mysql -u"username" -p"password" --host="127.0.0.1" mysql_db < mysql_db
但是,这引发了一个错误:
ERROR 1115 (42000) at line 3231: Unknown character set: 'utf8mb4'
这是第3231-3233行:
/*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_general_ci */ ;
我正在使用MySQL 5.1.69。我该如何解决这个错误?
您的版本不支持该字符集,我相信是5.5.3它引入的。您应该将mysql升级到用于导出该文件的版本。
5.5.3
然后,错误就很明显了:您在代码中设置了某个字符集,但是您的mysql版本不支持该字符集,因此对此一无所知。
根据https://dev.mysql.com/doc/refman/5.5/zh-CN/charset-unicode- utf8mb4.html:
utf8mb4是utf8的超集
因此,也许您可以将其设置为utf8,闭上眼睛并抱有希望,但这取决于您的数据,我不建议这样做。