教程所示圖片使用的是 github 倉庫圖片,網速過慢的朋友請移步>>> (原文)Mysql 支持 emoji 表情。mysql
更多討論或者錯誤提交,也請移步。git
最近爲博客添加了
Valine
評論系統,由於它用的Leancloud
的數據庫,因此打算寫個程序定時爬下來新的數據,而且存到本身的數據庫中(畢竟在本身手中才是最安全的)。由於評論裏面有emoji
表情,因此須要數據庫支持utf8mb4
編碼。github
服務器安裝的數據庫是Mysql 5.7
。網上不少方法是經過命令行設置字符集編碼格式,可是通過嘗試,都以失敗了結。sql
摸索後發現,須要更改mysql
的配置文件。shell
首先,備份原來的配置文件:sudo cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/mysql.conf.d/mysqld.cnf.bak
數據庫
而後,在mysqld.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' # 指定每次鏈接的字符集utf8mb4
最後,保存退出後,重啓mysql
服務:sudo service mysql restart
服務器
爲了方便使用,我一直使用的是mysql-font
。在建立表格時候,設置字符集是utf8mb4
,以下圖所示:編碼
最後,各式各樣的emoji
表情就能夠存儲在數據庫了:命令行
😀😃😄😁😆😅😂😊😇😉😌😍😘😗😙😚😋😜😝😛😎😏😒😞😔😟😕😣😖😫😩😠😡😶😐😑😯😦😧😮😲😵😳😱😨😰😢😥😭😓😪😴😷😈😺😸😹😻😼😽🙀😿😾🐱🐭🐮🐵✋✊✌️👆👇👈👉👊👋👏👐👍👎👌🙏👂👀👃👄👅❤️💘💖⭐️✨⚡️☀️☁️❄️☔️☕️✈️⚓️⌚️☎️⌛️✉️✂️✒️✏️❌♻️✅❎Ⓜ️