MySQL常见问题
Q:error code [1366]; Incorrect string value: '\xF0\x9F\x98\x81
A:这个问题是由于数据库编码方式引起的;
可通过修改数据库及表字符集解决该问题;
# 查询当前数据库字符集
SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
# 方案一
## 修改数据库及表字符集
ALTER DATABASE dscsupport CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
alter table dsc_bus_wechat_record character set utf8mb4 collate utf8mb4_general_ci
# 方案二
## 修改服务配置 my.cnf
[mysqld]
character-set-server=utf8mb4
## 重启MySQL服务
systemctl restart mysqld
utf8一般是指UTF-8,是一种针对Unicode的可变长度字符编码,每个字符最多三个字节,也叫utf8mb3
utf8mb4是utf8的超集,mb4是most bytes 4
的缩写,专门用于兼容四字节的Unicode,MySQL 5.5.3之后增加的字符编码支持;