在linux上查詢my.cnf
sudo find /
-name my.cnf
修改配置檔案
[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'
重啟mysql
##關閉
service mysqld stop
##重啟
service mysqld start
記住之前自己建立的**是不會變為utf8mb4字符集的所以需要自己修改
可以先檢視自己的乙個資料庫表的字符集
show
full
columns
from tablename;
然後修改自己要存貯emoji字符集的列
alter
table tablename modify 列名 longtext
charset utf8mb4;
對於mysql字符集我們不想出現亂碼情況有乙個經驗就是character_set_client、character_set_connection、character_set_results字元盡量設定成一致的 mysql資料庫儲存emoji注意事項
設定資料庫表字段為資料型別 utf8mb4 儲存表情字段以及查詢用到的相關varchar型別字段,如果儲存表情欄位不在查詢語句 現,可以只設定儲存欄位為utf8mb4型別 可能出現異常 敲黑板啦,很重要 要防止出現 illegal mix of collations utf8 general ci,...
emoji表情儲存到資料庫的方法
為什麼我們設定表的的字元型別為utf8卻不能存放emoji呢?原來utf8可能是2或3或4個位元組,而mysql的utf8是3個位元組,存放乙個emoji是需要4個位元組的,自然不夠。mysql資料庫在5.5.3之後開始支援utf8mb4字符集,所以mysql版本是5.5.3 的都可以設定讓資料庫儲...
如何在mysql資料庫中儲存emoji特殊字元
mysql在5.5.3版本之後增加了這個utf8mb4的編碼,mb4就是most bytes 4的意思,專門用來相容四位元組的unicode。其實,utf8mb4是utf8的超集,理論上原來使用utf8,然後將字符集修改為utf8mb4,也 會不會對已有的utf8編碼讀取產生任何問題。1.修改dat...