解決服務器mysql不能存儲emoji表情的問題

服務器日誌頻繁出現以下異常:java

Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x87' for column 'colum_name' ……mysql

經查詢,時輸入法emoji表情不能存入mysql.數據庫設置的字符集utf8最多隻能存儲3個字節數據,而emoji是4個字節,因此就會出現這個問題。對數據庫進行配置便可,找到mysql的安裝目錄下的my.cnf(linux環境,windows環境爲mysql.ini)文件,進行以下配置(6項)便可,可是前提是mysql5.5以上哦。linux

配置sql

通過以上設置之後,重啓mysql便可,重啓命令以下:數據庫

先關閉:systemctl stop mysqld;windows

啓動:systemctl start mysqld;服務器

狀態:systemctl status mysqld;測試

測試以下:3d

 

注意:如上配置若是沒有實現,檢查一下建立的數據庫、表和字段是否是utf8mb4字符集。日誌

數據庫字符集屬性:

表字符集:

字段字符集:

確保以上設置,就沒問題了!

相關文章
相關標籤/搜索