MySQLをインストールした際にデフォルトだと文字コードがlatin1
になっていることがあります。これは非常に困りますね
文字化けしてしまうので。
環境はMySQL5.7です。
文字コードの確認と変更を行っていきます。
文字コードの変更
mysqlにログインしてstatus
コマンドを入力します
mysql > status ~~省略~~ Server characterset: latin1 Db characterset: latin1 Client characterset: utf8 Conn. characterset: utf8 ~~省略~~
Server
とDb
の項目がlatin1
になってますね。
MySQLからログアウトして、サーバで/etc/my.cnf
を編集していきます。
コピー等取ってから行いましょう。
$ vim /etc/my.cnf [mysqld] #中略 character-set-server=utf8 #追加
MySQLの再起動
$ sudo systemctl restart mysqld
変更されたか確認
mysql > status ~~中略~~ Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8 ~~中略~~
utf8にできましたね
my.cnf
に記載したことによってutf8を指定することができました。
文字コードを確認するコマンドを使っても確認する事ができます
mysql> show variables like '%character_set%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+