ホームページ >バックエンド開発 >PHPチュートリアル >mysql への接続で php エラーが発生しました。ターゲット コンピューターが積極的に拒否したため接続できませんでした

mysql への接続で php エラーが発生しました。ターゲット コンピューターが積極的に拒否したため接続できませんでした

WBOY
WBOYオリジナル
2016-06-23 13:28:242004ブラウズ

エラー コード:

PHP 警告: mysql_connect() [function.mysql-connect]: E:website weixinpublicconnectdb.php の 6 行目
PHP警告: mysql_query() [function.mysql-query]: [2002] ターゲット コンピュータが積極的に拒否したため、接続を確立できません。
(tcp://localhost:3306 経由で接続しようとしています) E:websiteweixinpublicconnectdb.php の 7 行目
PHP 警告: mysql_query() [function.mysql-query< ;/a>]: ターゲット コンピュータが積極的に拒否したため、接続できません。
E:websiteweixinpublicconnectdb.php の 7 行目
PHP 警告: mysql_query() [
function.mysql-query]: サーバーへのリンクができませんでしたE: website weixinpublicconnectdb.php の 7 行目に確立されます

どの操作がこの問題を引き起こしたか忘れましたが、Web ページを使用して mysql に接続できません。 mysqlを再インストールしましたが、まだ接続できません。

ファイアウォールの問題が解決され、ファイアウォールがオフになりました。
ホスト ファイルも 127.0.0.1 localhost に変更され、解析されました。
root を使用して接続します。 My.ini は設定されず、警告ログは表示されません。

cmd をローカルで使用して接続することに問題はありません。Tenlnet には mysql_native_password が表示され、接続されるはずです。 。

解決方法を教えてください。 ?


ディスカッションへの返信 (解決策)

アプリケーション ログを確認すると、次の行が見つかりました: Server hostname (bind-address): '0.0.0.0'; port: 3306

このバインディングは影響しますか? ? 0.0.0.0 は、ローカル ホストの IP である必要もあります

MySQL サービスが開始されていません

MySQL サービスが開始されていません



開始されており、cmd コマンドを使用してデータベースにアクセスできます

MySQLのバージョンは何ですか?

MySQL のバージョンは何ですか?



バージョン 5.5 です。cmd を使用して接続して作業できます...そのソフトウェア。以前はうまくいきました。特定の操作を忘れた後、アクセスできなくなりました。

サーバーの IP アドレスを使用してサーバー上の mysql に接続しても問題が発生しました
例: $connection=mysql_connect('59.188.180.234:3306',$db_username,$db_password);
PHP ページにはまだプロンプトが表示されます

PHP 警告: mysql_connect() [function.mysql-connect]: in E:websiteweixinpublicconnectdb.php の 6 行目
PHP 警告: mysql_query() [function.mysql-query]: [2002] ターゲット コンピュータが積極的に拒否したため、接続できません。
(tcp://localhost:3306 経由で接続しようとしています) E:websiteweixinpublicconnectdb.php の 7 行目
PHP 警告: mysql_query() [function.mysql-query< ;/a>]: ターゲット コンピュータが積極的に拒否したため、接続できません。
E:websiteweixinpublicconnectdb.php の 7 行目
PHP 警告: mysql_query() [
function.mysql-query]: サーバーへのリンクができませんでしたE: ウェブサイト weixinpublicconnectdb.php の 7 行目に確立してください


専門家の方、助けてください、もう我慢できません

MySQL は個別にインストールされていますか?

MySQL は個別にインストールされていますか?

個別にインストールされているのですが、私のコンピューターのphp設定に問題があるようです。使用すべきすべての方法を使用しました。以前は接続できていたのに、リモート mysql に接続できない理由はありません。また、ドメイン名を使用してリモート mysql に接続すると、ホストが見つからないというメッセージが表示されます。ただし、ping ドメイン名に対しては正常に ping を実行できます。 。 。


リモートで接続していますか? それで、それは許可されていますか?


リモートで接続していますか?

それは許可されていますか?

リモート接続ではなく、ローカル接続です。ローカルで接続できなかったので、リモートの mysql に接続できるか試してみましたが、リモート接続も接続できませんでした。サーバーが拒否した可能性は否定できませんが、cmd を使用すると接続できるのに、ローカルで接続できませんでした。

では、リモートmysqlが接続できない理由はありません どういう意味でしょうか?
リモート接続は許可されなければなりません、これがルールです

phpinfo() を実行し、PATH の必要な値をポストして確認します

すると リモート mysql に接続できない理由はありません これはどういう意味ですか?
リモート接続は許可されなければなりません、これがルールです

phpinfo() を実行し、PATH の必要な値をポストして確認します


今、私は会社にいて、コンピューターは家にあります。パス項目はphp.iniで設定されたパスを参照していますか?

PATH はオペレーティング システムの環境変数であり、実行するソフトウェアの場所をオペレーティング システムに通知するために使用されます

PATH はオペレーティング システムの環境変数で、ソフトウェアの場所をオペレーティング システムに通知するために使用されます



えっと、これは php 実行可能ファイルのパスも調べます。読み取った後はどうすればよいでしょうか。

いいえ、MySQL のパスも含まれているかどうかによって異なります
含まれている場合は、削除する必要があります

mysql 設定ファイルにバインドされている IP アドレスによって異なります。接続できます。

mysql 設定ファイルにバインドされている IP アドレスに応じて、接続できるかどうかを確認してください。


mysql バインディング IP の設定は、bind_address です。 .ini にこれがありません。おそらく設定されていません
cmd と mysql_workbench を使用して接続できる理由は他にありますか? 。
ローカル接続の場合は、IP を localhost または 127.0.0.1 に変更します。

リモート IP の場合は、リモート権限を有効にする必要があります。

Linux の場合、ポートが外部に開いているかどうかを確認してください。ファイアウォールによって制限されている可能性があります。 Telnet IP セグメント番号を使用して、ポートが開いているかどうかをテストできます。

phpinfo() にアクセスして投稿し、php の設定を変更したようです。

ローカル接続の場合は、IP を localhost または 127.0.0.1 に変更します。

リモート IP の場合は、リモート権限を有効にする必要があります。


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