MySQL 絵文字のデータを挿入できない
MySQL: 5.5.54-0+deb8u1 (Raspbian)
MySQLに絵文字を入れようと思うとutf8では入れられないらしい。utf8mb4という文字コードが用意されていて、それを使えば対応できるそうです。
MySQLのutf8は1文字3バイトとして扱っている。しかし、絵文字などは1文字4バイトになっているためデータを扱えない。
http://okamerin.com/nc/title/mysql_utf8mb.htm
MySQLの文字コードをutf8mb4にする - light log
my.cnfの設定
自分のmy.cnfは /etc/mysql/my.cnfにあった
クライアントとサーバーの文字コードを設定する
[client] ... #default-character-set = utf8 default-character-set = utf8mb4 # utf8mb4に変更 [mysqld] ... #character-set-server = utf8 character-set-server = utf8mb4 # utf8mb4に変更
データベースの文字コード設定
mysql> alter database databasename default character set utf8mb4;
テーブルの文字コードを設定
mysql> ALTER TABLE m_listener DEFAULT CHARACTER SET utf8mb4; mysql> ALTER TABLE latest_comments DEFAULT CHARACTER SET utf8mb4;