标签:emoji

MySQL中的Emoji表情

Sept. 15, 2017 · Mysql Emoji
在向MySQL中直接插入Emoji后,查询出来的数据全部变成了问号,网上查了下大致原因是MySQL使用的utf8编码是三位的,但是一个Emoji表情需要四位,解决方法就是更改MySQL编码为utf8mb4。需要MySQL版本>= 5.5.3,低版本不支持这个字符集。1. 修改已存在数据库的编码如果你的项目已经上线并不推荐直接修改已存在的数据库编码,有可能导致乱码问题,可以使用转码的方式存储。ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;2. 新建数据库时指定编码PS:新建数据库时最好显式的指出数据库编码,不要依赖数据库默认配置。CREATE DATABASE `database` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;3. 修改MySQL默认字符集我的配置文件在/etc/my.cnf这里的修改只对以后建立的数据库有效。[mysqld]character-set-server=utf8mb4