【MySQL】ソケットエラーを解決する(mysql.sock)ERROR2002

この記事は約3分で読めます。
ポートフォリオ制作実績

MySQLを初めて起動しようとしたとき、以下のようなエラーが発生したことはないでしょうか。

結局どれを試しても解決されなかったわ・・・

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) #エラー1

touch: /var/lib/mysql/mysql.sock: No such file or directory #エラー2

今回はこのソケットエラーの解決策や方法をいくつか紹介します。

スポンサーリンク

【MySQL】ソケットエラーを解決する(mysql.sock)

方法1:ファイルの場所を調べる

% php -i | grep socket
mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
mysqli.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
pdo_mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock

 

上記のソースコードを試してmysql.sockファイルがあるかどうか確認しましょう。なければmysql.sockファイルをインストールしなければなりません。

方法2:MySQLを再起動する

restartコマンドでMySQLを再起動してもう一回起動してみましょう。この際にmysql.sockが自動で作られるケースもあるようです。

$ sudo /etc/init.d/mysqld restart

もしくは

$ mysql.server start

と入力してみましょう。

Starting MySQL
SUCCESS!

このように表示されれば問題ありません。この後に「mysql -uroot -p」と入力してMySQLにログインしましょう。

方法3:手動でmysql.sockを作成する

手動でmysql.sockファイルを作る場合には、以下のソースコードをコマンド実行しましょう。

$ sudo touch /var/lib/mysql/mysql.sock
$ sudo chown mysql:mysql /var/lib/mysql/mysql.sock

 

スポンサーリンク

まとめ

筆者もこのようなエラーに出会ったことが何度かありますが、上記の方法2で試した結果、うまくいったことが多かったです。

$ mysql.server start

 

ぜひエラーとおさらばしてMySQLライフを楽しみましょう。

 

 

 

タイトルとURLをコピーしました