docker-composeでMySQLコンテナを立ち上げたが、日本語入力できない時にやること
なぜ、できたのか説明できないがメモとして有用なのでブログに残しておく。
解決策
LANG: C.UTF-8
を追加する。
version: '3.3' services: db: image: mysql restart: always environment: LANG: C.UTF-8 MYSQL_DATABASE: imaharu MYSQL_USER: imaharu MYSQL_PASSWORD: imaharu MYSQL_ROOT_PASSWORD: Pass1234
やったこと
clientの文字コードが問題だと思い、utf8mb4
でMySQLクライアントを立ち上げたが入力することができなかった。
$ mysql -u imaharu -p mysql> status ... Server characterset: utf8mb4 Db characterset: utf8mb4 Client characterset: latin1 Conn. characterset: latin1
$ mysql --default-character-set=utf8mb4 -u imaharu -p mysql> status ... Server characterset: utf8mb4 Db characterset: utf8mb4 Client characterset: utf8mb4 Conn. characterset: utf8mb4
MySQLではなく、OSの問題であると推測をつけMySQLコンテナのDockerfileを確認すると、Debianであることが判明し検索すると解決策が見つかった。
これから調べたいこと
LANG: ja_JP.UTF-8
を指定しても、日本語入力はできなかったので理由を調査したい。