エラー メッセージ **「エラー: 'localhost' (10061)」** は、クライアントが MySQL サーバーに接続できないことを意味します。通常の理由は次のとおりです。
1. **MySQL サービスが開始されていません**
・MySQLサーバーが起動していない可能性があります。 Windows では、サービス マネージャーを開き、「MySQL」 サービスを見つけて手動で開始できます。 Linux では、次のコマンドを使用して MySQL が実行されているかどうかを確認できます。
「」バッシュ
sudo systemctl status mysql # Ubuntu/Debian
sudo systemctl status mysqld # CentOS/Fedora
「」
2. **ポート番号が間違っています**
- デフォルトでは、MySQL サーバーはポート **3306** を使用します。設定ファイルのポート番号が変更されている場合、クライアントから接続できなくなる場合があります。
- MySQL 構成ファイル (`my.cnf` や `my.ini` など) のポート番号設定をチェックして、クライアントが正しいポートに接続していることを確認できます。
3. **ファイアウォールが接続をブロックします**
- ローカル ファイアウォールが MySQL ポートをブロックしている可能性があります。ファイアウォールにポート 3306 をブロックするルールが有効になっている場合は、ファイアウォールを一時的に無効にするか、ポートを開くことができます。次のコマンドを使用して、Linux でポート 3306 を開くことができます。
「」バッシュ
sudo ufwallow 3306 # Ubuntu ファイアウォールの例
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent # CentOS/Fedora
sudo firewall-cmd --reload # ファイアウォールをリロードします
「」
4. **バインディングアドレス構成の問題**
- MySQL 設定ファイルの「bind-address」設定により、リモート接続のみが許可されるか、特定の IP アドレスへのバインドのみが許可される場合があります。ローカル接続を許可するには、設定ファイルの「bind-address」が「127.0.0.1」または「localhost」に設定されていることを確認してください。
5. **ソケット ファイルが見つからないか、パスが間違っています**
- 一部のシステムでは、MySQL は接続に Unix ソケット ファイルを使用します。設定ファイル内の「socket」パスが正しいこと、およびそのファイルが実際に存在することを確認してください。デフォルトでは、このファイルは通常、「/var/run/mysqld/mysqld.sock」または同様のパスにあります。
6. **ユーザー権限の問題**
・接続するユーザーに適切な権限が無い場合にも接続できない場合があります。ユーザー「localhost」の権限が正しいことを確認してください。次のコマンドを使用して権限を再付与してみてください。
```SQL
*.* のすべての権限を「パスワード」で識別された「ユーザー名」@「ローカルホスト」に付与します。
フラッシュ特権;
「」
ソリューションのアイデアのまとめ
MySQL サービスのステータス、ポート設定、ファイアウォール ルール、バインディング アドレス、ソケット ファイル、およびユーザー権限をチェックして、MySQL の構成とサーバー設定が正しいことを確認します。