MySQL不能存储emoji解决方法,将utf8改成utf8mb4
MySQL不能存储emoji解决方法,将utf8改成utf8mb4
网上很多教程都不能解决问题
真正能解决问题的方案如下:
1、登录宝塔面板,找到:
软件商店-已安装-MySQL(需要升级到5.3以上)-设置-配置修改
2、在配置修改中添加这些代码(添加到红字体对应下方,红色字体不要添加进去):
[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'
3、添加完代码后,点击:
设置-服务-重启
4、进入数据库管理:
宝塔-数据库-管理-进入PHPmyadmin
5、修改三处为utf8mb4_unicode_ci
(1)数据库名-操作-排序规则,改为:utf8mb4_unicode_ci
(2)数据库名-“存放文章的表”结构-勾选原来有排序规则的字段-修改,改为:utf8mb4_unicode_ci
(3)点击表名-操作表选项-排序规则,改为:utf8mb4_unicode_ci (全部表都改一下)
到这里就完成了全部操作,再次发布文章时,插入emoji即可正常存储显示。
转载:http://ask.pprpp.com/article/1