折雨的天空
General error: 1366 Incorrect string value: 'xF0x9Fx91x87<p...' for column 'content' at row 1
2024-1-1 我好笨


使用MySQL的频率较低,今天就遇到这么一个报错:



General error: 1366 Incorrect string value: 'xF0x9Fx91x87<p...' for column 'content' at row 1



查了以下,是MySQL存储汉字用了utf8,我看了一下库,是utf8,而且也是推荐的mb4,但是表的排序,默认是:utf8mb3_general_ci







这就很离谱,于是改了一下表的排序字符集为:utf8mb4_unicode_ci







phpmyadmin可以直接改,也可以使用语句:







ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;



改了后,报错变化,报错变为:







[10501]SQLSTATE[HY000]: General error: 3988 Conversion from collation utf8mb3_general_ci into utf8mb4_bin impossible for parameter



就很无语。应该是没有set names吧







然后在服务端改了一下配置







在my.cnf的mysqld节点加入了以下配置代码:



character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'



重启数据库后,就正常了。

发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容