web-dev-qa-db-ja.com

エラー:SQLSTATE [HY000] [2002]ターゲットマシンがアクティブに拒否したため、接続できませんでした

コードのデバッグ中にエラーが突然発生しました。データベースへの接続に関するこの一連のエラーがあります。

ERROR: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it.
( ! ) Fatal error: Uncaught exception 'PDOException' with message ' in C:\wamp\www\web\main\users.php on line 15
( ! ) PDOException: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it. in C:\wamp\www\web\main\users.php on line 15

これは、エラーが指している場所のコードです

function __construct()
        {
            $this->con = new PDO("mysql:Host=".$this->Host.";dbname=".$this->db,$this->user,$this->pass);
        }

私は通常、このような問題は発生しないため、何をすべきかわかりません。したがって、WAMPについてはあまり勉強していません。ご協力ありがとうございました。

16
user3406220

WAMPアイコンがオレンジ色の場合、サービスの1つが開始されていません。

あなたの場合、サーバーが実行されていないを示すメッセージが表示され、リクエストをリッスンしているため、MySQLは起動していないようです。

Mysqlログを見て、それがWindowsイベントログを何も調べていない場合、Windows -> Applications セクション。そこにあるエラーメッセージは、MySQLが起動に失敗する原因を特定するのに非常に役立ちます。

これは、通常、\ windowsまたは\ windows\system32フォルダーにある、WAMPServers MySQLによって取得される別のインストールからのmy.iniファイルが原因で発生する場合があります。 「my.ini」と「my.cnf」を検索し、\ wamp ....フォルダー構造の外にこれらのいずれかが見つかった場合は、削除するか、少なくとも名前を変更して見つからないようにします。次に、MySQLサービスを再起動します。

28
RiggsFolly

Drupal Webサイトをあるローカルホストから別のホストに移行しようとすると、XAMMPを実行しているMacからWAMPを実行するWindowsに同様の問題が発生しました。

これは、Webサイトのページにアクセスしようとしたときに表示されるエラーメッセージでした。

PDOException: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it. 
in drupal_get_installed_schema_version() (line 155 of C:\wamp\www\chia\includes\install.inc).

Settings.phpで、データベース名、ユーザー、パスワードのすべてを正しく変更しました。

$databases = array (
  'default' => 
  array (
    'default' => 
    array (
      'database' => 'mydatabasename',
      'username' => 'mydbusername',
      'password' => 'mydbpass',
      'Host' => 'localhost',
      'port' => '8889',
      'driver' => 'mysql',
      'prefix' => '',
    ),
  ),
);

数時間の無頓着なGoogle検索の後、ポートを空の値に変更しました。

'port' => '',

その後、サイトは適切にロードされました。

8
igorM

コードで使用するのとは異なるMySQLPortを使用する可能性があります

enter image description here

$conn = new PDO("mysql:Host=".SERVER_NAME.";port=3307;dbname=".DB_NAME, DB_USER, DB_PASS);

両方のportsは同じでなければなりません。

2
ntthushara

WampServerを再起動してください...これで解決します。そうでない場合は.. Resta

0
David Saint

ワンプサーバーを再起動してからphp bin/magento cache:cleanを実行するだけです

0
Muhammad Ahmed

ディレクトリから次のファイルを削除します。

\wamp\bin\mysql\mysql5.6.17\ib_logfile0
\wamp\bin\mysql\mysql5.6.17\ib_logfile1
\wamp\bin\mysql\mysql5.6.17\ibdata1

これで問題が解決しました。

0
Nithiyakumar K

Xamppまたは実行中のサーバーを再起動する必要があります。必ずsq

0
israelnojr