Skip to content
困った時に思い出したい

MySQLで日本語が入力できないとき

db1 min read

MySQLで日本語を入力すると消える

打っても打っても消えてしまうのでもちろん保存もできません。

今回うまくいったのをメモしておきます。

環境

  • Ubuntu 18.04 (VirtualBox, Vagrantで)
  • MySQL 5.7.27

確認

まずMySQLにrootで入ります。

sudo mysql -u root

*パスワード設定なしでログインできない場合は -p オプションを追加してパスワード入れてください。

ログインしたら

mysql> status

でこのあたりを見ます。

Server characterset: utf8
DB characterset: utf8
Client characterset: utf8
Conn. characterset: utf8

もしutf8になってなかったらutf8へ変更しましょう。

手順

MySQLの設定ファイルを変更する

sudo vi /etc/mysql/my.cnf

このファイルの下の方にある

[client]
default-character-set = utf8
[mysqld]
character-set-server=utf8
skip-character-set-client-handshake
default-storage-engine=INNODB
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8

このうち、[client][mysql] の部分をコメントアウトします。

[client]
# default-character-set = utf8
[mysqld]
character-set-server=utf8
skip-character-set-client-handshake
default-storage-engine=INNODB
[mysqldump]
default-character-set = utf8
[mysql]
# default-character-set = utf8

これで保存したら日本語を打てて、保存もできるようになりました。

ならなかったらコメントアウトしたあとで再起動してみてください。

ちなみに、調べていると

export LC_ALL=ja_JP.UTF-8
export LANG=ja_JP.UTF-8

でできたという方も多くいらっしゃいます。

今回はこれをせずにできましたが、もしうまくいかなかった場合はどちらも試してみてください。

*もっといい方法があるよ、って方はコメントなどで教えていただけると嬉しいです。

今回はこちらを参考にさせていただきました。

ありがとうございました。

参考: Ubuntu日本語フォーラム / ubuntu18.04のmysqlクライアントで日本語入力ができません

© 2021 by 困った時に思い出したい. All rights reserved.
Theme by LekoArts