# 「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を起動すると、サーバーが正常に起動し、エラーは出なくなった。
この記事には、プロセスの確認や削除に使ったコマンドを残していない。
解決には次の記事を参考にした。