问题描述
- 保存微信昵称的时候出现错误
具体错误提示如下
解决办法
- 修改mysql server
修改/etc/my.cnf
[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'
PS:mysql 版本必须是5.5.3+
查看版本:SHOW VARIABLES WHERE Variable_name LIKE ‘version%’;
执行修改数据库和表、字段的字符集sql
ALTER DATABASE dbname CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
alter table tablename modify `NICKNAME` varchar(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '昵称';
重启mysql服务
sudo systemctl restart mysqld
- 检查mysql连接字符串, 驱动是否支持utf8mb4