1

リモートデータベースに接続することを想定しているconnection.phpファイルがあります。コードは次のとおりです。

<?php
try {
    $conn = new PDO('mysql:host=IP;port=PORT;dbname=DBNAME', 'USERNAME', 'PASSWORD');
} catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();
} 
?>

Toadを介してデータベースに接続できるため、すべての変数が正しいと信じています。ローカルホストを介した自分のデータベース接続にこの同じ PDO 形式を使用しましたが、正常に動作します。何が問題なのかわかりません。私はToadを使用できるので、サーバーはすでにToadへのリモートアクセスを許可していると思いますが、それについてはわかりません。どんな入力でもいいでしょう。

また、これは PDOException が戻ってくるエラーです。

SQLSTATE[HY000] [2003] Can't connect to MySQL server on 'IP' (111)
4

3 に答える 3

3

111 は接続が拒否されたことを意味します。

これはおそらく、MySQL サーバーがlocalhostインターフェースのみをリッスンしていることを意味します。

次のような行がある場合:

skip-networking
bind-address = 127.0.0.1

my.cnf 構成ファイルでそれらをコメントし (行頭に # を追加)、MySQL を再起動する必要があります。

于 2013-10-07T07:43:00.393 に答える