服务器日志频繁出现如下异常:
Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x87' for column 'colum_name' ……
经查询,时输入法emoji表情不能存入mysql.数据库设置的字符集utf8最多只能存储3个字节数据,而emoji是4个字节,所以就会出现这个问题。对数据库进行配置即可,找到mysql的安装目录下的my.cnf(linux环境,windows环境为mysql.ini)文件,进行如下配置(6项)即可,但是前提是mysql5.5以上哦。
配置
经过以上设置以后,重启mysql即可,重启命令如下:
先关闭:systemctl stop mysqld;
启动:systemctl start mysqld;
状态:systemctl status mysqld;
测试如下:
注意:如上配置如果没有实现,检查一下创建的数据库、表和字段是不是utf8mb4字符集。
数据库字符集属性:
表字符集:
字段字符集:
确保以上设置,就没问题了!