先确认当前MySQL版本,MySQL在5.5.3之后才增加了utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的unicode,好在utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换。
select version();
修改MySQL数据库配置文件:
[client] default-character-set = utf8mb4 [mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect = 'SET NAMES utf8mb4' [mysql] default-character-set = utf8mb4
重启MySQL后查看修改结果:
SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
使用示例:
--修改数据库字符集 ALTER DATABASE `test` CHARACTER SET = utf8mb4; --修改表字符集 ALTER TABLE `test` convert to CHARACTER SET utf8mb4; --修改字段字符集 ALTER TABLE `test` CHANGE COLUMN `name` `name` varchar(12) CHARACTER SET utf8mb4;