原文链接:http://www.dubby.cn/detail.html?id=9007
强烈使用utf8mb4代替utf8,因为utf8支持的字符集非常有限。
具体操作如下:
1、修改MySQL配置
[mysql]
default-character-set=utf8mb4
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
2、修改表或者字段的字符集
ALTER TABLE tableName MODIFY columnName varchar(512) CHARACTER SET utf8mb4;
ALTER DATABASE databasename CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
3、在使用JDBC数据库连接时,不要自己指定characterEncoding=UTF-8
和characterSetResults=UTF-8
,这个会覆盖MySQL的默认配置。