mysqlコマンドを実行して以下のようなメッセージが出て接続できなかったとき。

$ mysql -u root -p
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

この原因はいろいろあると思うけれど、解消のひとつの手段として以下のように接続情報を記載したファイルを作成してそれを読み込ませるとクリアになる場合があります。

以下のような内容をlocal_access.cnfというファイル名で保存します。ファイル名はなんでもいいです。

[client]
user = your_user_name
password = your_password
host = 127.0.0.1

あとは--defaults-fileオプションでファイルを指定すればOK

$ mysql --defaults-file=local_access.cnf

SQLを読み込ませたいときは、こんなふうに<記号をつけてsqlのファイルを指定すればOK

$ mysql --defaults-file=local_access.cnf < sample.sql

この記事の環境情報

  • MySQL Server version: 8.0.29 MySQL Community Server - GPL