前提・実現したいこと
MacBookのターミナルからEC2インスタンスへssh接続しそこからさらにAmazonRDSのMySQLへ接続しているのですが、MySQLのコマンドを打つ時に日本語を入力すると入力してる時は表示され、エンターボタンを押して文字を確定すると消えてしまいます。
PHPからPDO接続してコマンド操作すると、HTMLで作ったフォームから日本語をPOSTメソッドでPHPへ引き渡し、それを使ってinsertをすることができましたが、POSTメソッドで送られた日本語のデータを使ってselect文でwhereを使う一致検索をしようとすると一行もかえってきません。
ネットで検索したらmysqlの文字コードがおかしいんじゃないかとのことで、文字コードを調べたら以下のようになりました。
MySQLで日本語を使ったコマンドを実行するにはどのようにすればよいかご教示頂ければ幸いです。
設定など
MySQL側の設定
EC2(クライアント)側の設定
/etc/my.cnf.d/client.cnf
/etc/my.cnf.d/mysql-clients.cnf
試したこと
/etc/my.cnf.d/client.cnfの[client]や[client-mariadb]のところや/etc/my.cnf.d/mysql-clients.cnfの[mysql]のところにdefault-character-set=utf8mb4と設定してみましたが日本語入力できませんでした。また、PDO接続する際のphpの方でもcharset=utf8やcharset=utf8mb4と設定してみましたがそちらもうまくいきませんでした。
EC2のlocaleコマンド実行結果
補足情報(FW/ツールのバージョンなど)
MySQL(8.0.23)
PHP(7.2.34)
Amazon EC2(Amazon Linux2)
AmazonRDS