For key collation_server. Expected value utf8mb4_unicode_ci, found value utf8mb4_general_ci
时间: 2023-11-23 20:54:01 浏览: 287
设置mysql5.7编码集为utf8mb4的方法
这个错误提示表明在某个键的排序规则(collation)中,期望的值是utf8mb4_unicode_ci,但实际上找到的值是utf8mb4_general_ci。这可能是因为在修改MySQL配置文件时,没有正确地设置字符集和排序规则。可以尝试按照以下步骤解决这个问题:
1. 打开MySQL配置文件my.cnf或my.ini。
2. 确认在以下三个部分中都添加了如下内容:
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect=’SET NAMES utf8mb4’
3. 重启MySQL数据库。
4. 检查MySQL变量,确保字符集和排序规则已经正确设置:
SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';
如果还是出现错误,可以尝试使用ALTER DATABASE和ALTER TABLE命令修改数据库和表的字符集和排序规则,例如:
mysql> ALTER DATABASE voice_reports_test CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
mysql> ALTER TABLE ZSCC_WRK_BSE_CKLCC CONVERT to CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
阅读全文