ホームページ  >  記事  >  ウェブフロントエンド  >  MySQL エラー HY) を解決する方法: &#localhost 上の MySQL サーバーに接続できません:

MySQL エラー HY) を解決する方法: &#localhost 上の MySQL サーバーに接続できません:

WBOY
WBOYオリジナル
2024-08-11 06:44:13935ブラウズ

How to Resolve MySQL Error HY): Can

MySQL エラー [エラー 2003 (HY000): 'localhost:3306' (10061) の MySQL サーバーに接続できません] が発生すると、特に即時アクセスが必要な場合にイライラすることがあります。データベースに。このエラーは一般的であり、通常、MySQL クライアントが MySQL サーバーとの接続を確立できないことを示します。以下では、考えられる原因を分析し、この問題を解決するための解決策を提供します。このブログを読み終えるまでに、このエラーを効率的にトラブルシューティングして修正するための知識が身につくでしょう。


エラーを理解する

エラー メッセージ [エラー 2003 (HY000): 'localhost:3306' (10061) の MySQL サーバーに接続できません] は通常、次の場合に発生します。

  1. MySQL サーバーが実行されていません: MySQL サービスがアクティブでない場合、クライアントは接続を確立できません。
  2. ポート 3306 が開いていません: ポート 3306 は MySQL のデフォルトのポートです。ブロックされているかリッスンしていない場合、接続は失敗します。
  3. ファイアウォールまたはセキュリティ ソフトウェア: ファイアウォール設定またはセキュリティ ソフトウェアによって、ポート 3306 へのアクセスがブロックされる場合があります。
  4. MySQL 構成の問題: MySQL 構成ファイル (my.cnf または my.ini) が正しく設定されていない可能性があります。
  5. ネットワークの問題: リモート接続の場合、ネットワーク構成により MySQL サーバーへのアクセスが妨げられる可能性があります。

段階的な解決策

1. MySQL サービスが実行されているかどうかを確認します

最初のステップは、MySQL サービスが実行されていることを確認することです。

  • Windows: サービス アプリ (services.msc) を開き、MySQL または MySQL80 を見つけて、実行されているかどうかを確認します。そうでない場合は、サービスを開始してください。
  • Linux/MacOS: ターミナルで次のコマンドを実行します。
  sudo systemctl status mysql

サービスが非アクティブな場合は、次のコマンドを使用して開始します。

  sudo systemctl start mysql

2.MySQL がポート 3306 でリッスンしていることを確認します

MySQL がポート 3306 でリッスンするように設定されていることを確認します。これは、MySQL 設定ファイルを調べることで確認できます。

  • MySQL 構成ファイル (Linux/MacOS の場合は my.cnf、Windows の場合は my.ini) を開きます。
  • 次の行を探します。
  [mysqld]
  port=3306
  bind-address=127.0.0.1

ポートが 3306 に設定されており、バインド アドレスが正しいことを確認してください。

  • Linux/MacOS: netstat コマンドを使用して、MySQL がポート 3306 でリッスンしているかどうかを確認することもできます。
  sudo netstat -plnt | grep mysql

3. ファイアウォールとセキュリティ ソフトウェアを確認します

ファイアウォールまたはセキュリティ ソフトウェアがポート 3306 をブロックし、接続を妨げている可能性があります。

  • Windows ファイアウォール:
    • セキュリティが強化された Windows Defender ファイアウォールを開きます。
    • 受信ルールを確認し、ポート 3306 でのトラフィックを許可するルールがあることを確認してください。
  • Linux (UFW):
  sudo ufw allow 3306/tcp

ルールがアクティブかどうかを確認するには:

  sudo ufw status

4. MySQL 接続をテストします

サービスが実行中でポート 3306 が開いていることを確認したら、接続をテストします。

  • ターミナルで mysql コマンドを使用します。
  mysql -u root -p -h 127.0.0.1 -P 3306

それでもエラーが発生する場合は、ユーザー権限に問題があるか、MySQL ユーザーがローカルホストから接続できないことが原因である可能性があります。

5. MySQL ユーザー権限を確認します

MySQL root ユーザーまたは接続しようとしているユーザーに適切な権限がない可能性があります。必要な権限を付与するには:

  • root として MySQL にログインします。
  mysql -u root -p
  • 次のコマンドを実行します。
  GRANT ALL PRIVILEGES ON *.* TO 'your_username'@'localhost' IDENTIFIED BY 'your_password';
  FLUSH PRIVILEGES;

これにより、ユーザーが接続するための適切な権限を持っていることが保証されます。

6. MySQL ログを確認します

上記の手順で問題が解決しない場合は、MySQL ログを確認すると、さらに詳しい情報が得られます。

  • Linux:
  sudo tail -f /var/log/mysql/error.log
  • Windows: 通常、MySQL インストール ディレクトリにある MySQL エラー ログ ファイルを確認します。

7. MySQL を再インストールまたは修復

上記の解決策を試しても問題が解決しない場合は、MySQL を修復または再インストールすることを検討してください。 Windows では、MySQL インストーラーを使用してインストールを修復できます。 Linux では、次を使用して再インストールできます:

sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get install mysql-server

Conclusion

The [ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost:3306' (10061)] is a common issue that can stem from various factors, such as the MySQL service being down, firewall settings, or incorrect configurations. By systematically following the steps outlined in this blog, you can effectively troubleshoot and resolve the issue, ensuring smooth and uninterrupted access to your MySQL server.

For more in-depth tutorials and troubleshooting guides, feel free to explore our blog and subscribe to stay updated with the latest tips and tricks in database management and software development.

以上がMySQL エラー HY) を解決する方法: &#localhost 上の MySQL サーバーに接続できません:の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。