ホームページ > データベース > mysql チュートリアル > PyMySQL を使用して Localhost 上の MySQL に接続すると「接続が拒否されました」エラーが発生するのはなぜですか?

PyMySQL を使用して Localhost 上の MySQL に接続すると「接続が拒否されました」エラーが発生するのはなぜですか?

Linda Hamilton
リリース: 2024-11-03 22:22:30
オリジナル
937 人が閲覧しました

Why Am I Getting a

ローカルホスト上の MySQL に接続する際の PyMySQL 接続エラーのトラブルシューティング

PyMySQL を使用してローカルホスト上の MySQL データベースに接続しようとすると、次のような問題が発生する場合があります。エラー メッセージ:

socket.error: [Errno 111] Connection refused
pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (111)")
ログイン後にコピー

この問題に対処するには、次のトラブルシューティング手順を検討してください。

MySQL サービスのステータスを確認する

MySQL がサービスが実行中です。コマンド プロンプトで確認できます。

mysqladmin -u root -p status
ログイン後にコピー

ネットワーク接続

データベース ホスト (通常は localhost) がコンピュータからアクセス可能であることを確認します。次のコマンドを実行します。

ping localhost
ログイン後にコピー

MySQL ソケットの場所を確認します

次のコマンドを実行して、MySQL ソケットへのパスを確認します。

mysqladmin variables | grep socket
ログイン後にコピー

PyMySQL 接続文字列の unix_socket パラメータを取得したパスに設定します。例:

<code class="python">pymysql.connect(db='base', user='root', passwd='pwd', unix_socket="/tmp/mysql.sock")</code>
ログイン後にコピー

MySQL ポートの確認

次のコマンドを使用して、MySQL サーバーで使用されているポートを確認します:

mysqladmin variables | grep port
ログイン後にコピー

ポートがデフォルトの 3306 ではない場合は、PyMySQL 接続文字列にポート パラメータを設定します。

<code class="python">pymysql.connect(db='base', user='root', passwd='pwd', host='localhost', port=XXXX)</code>
ログイン後にコピー

追加のトラブルシューティングのヒント

  • ファイアウォールまたはウイルス対策を無効にするデータベース接続をブロックしている可能性のあるソフトウェア。
  • ​​
  • 指定されたデータベース ユーザーが「ベース」データベースにアクセスできることを確認してください。
  • 構成を変更した後、MySQL サービスを再起動してください。

以上がPyMySQL を使用して Localhost 上の MySQL に接続すると「接続が拒否されました」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート