mysql 支援 emoji
阿新 • • 發佈:2019-01-06
MYSQL 5.5 之前,UTF8 編碼只支援1-3個位元組,只支援BMP這部分的unicode編碼區,BMP是從哪到哪,到http://en.wikipedia.org/wiki/Mapping_of_Unicode_characters這裡看,基本就是0000~FFFF這一區。 從MYSQL5.5開始,可支援4個位元組UTF編碼utf8mb4,一個字元最多能有4位元組,所以能支援更多的字符集。
utf8mb4 is a superset of utf8
utf8mb4相容utf8,且比utf8能表示更多的字元。
emoji存入mysql需要欄位字符集為utf8mb4。
解決辦法
修改/etc/my.cof檔案
[mysqld]
#修改編碼格式
character-set-server=utf8mb4
重啟mysql
/etc/init.d/mysqld stop
/etc/init.d/mysqld start
修改欄位編碼格式
ALTER TABLE `table_name` MODIFY COLUMN `columb_name` VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL
然後就可以儲存使用emoji表情了。