# 「connect ECONNREFUSED 127.0.0.1:3306」エラーの解決方法

2024-02-12 16:32:00

Node.jsからMySQLに接続しようとすると、「connect ECONNREFUSED 127.0.0.1:3306」で失敗した。 原因は複数バージョンのMySQLプロセスの混在で、古いMySQLを完全に削除して再インストールすると解決した。

# Node.jsからMySQLに接続するとECONNREFUSEDになった

Node.jsでMySQLを使う開発中に、MySQLへ接続すると次のエラーが発生した。

connect ECONNREFUSED 127.0.0.1:3306

# 再起動・権限付与・再インストールでは解決しなかった

最初に、MySQLが正しく起動しているかを確認した。 その結果、MySQLは起動していなかった。 その後に試した方法と結果は次のとおりである。

試したこと 結果
MySQLを再起動する 同じエラーが発生した
MySQLのプロセスに権限を付与する 解決しなかった
MySQLをアンインストールして再インストールする インストール時にエラーが発生した

# 複数バージョンのMySQLプロセスが混在していた

MySQLのプロセスを確認すると、複数のバージョンのプロセスが混在していた。

# 古いMySQLを完全に削除すると起動した

古いバージョンのMySQLを完全に削除し、再度インストールした。 再インストール後にMySQLを起動すると、サーバーが正常に起動し、エラーは出なくなった。

この記事には、プロセスの確認や削除に使ったコマンドを残していない。

解決には次の記事を参考にした。