mysql_connect( "remote_server"、 "user"、 "pass")を使用した場合は正常に動作しますが、次のことを試した場合は、
$db = new PDO("mysql:dbname=dbname;mysql:host=remote_server", "user", "pass");
それはうまくいきません。最初にWebサーバーにmysql-clientがインストールされていました。PDO接続を試みると、このエラーが表示されました。
接続失敗:SQLSTATE [HY000] [2002]ソケット経由でローカルMySQLサーバーに接続できませんでした/var/run/mysqld/mysqld.sock(2)
だから私はmysqlサーバーをインストールし、代わりに次のエラーを得ました:
接続に失敗しました:SQLSTATE [28000] [1045]ユーザー "user" @ "localhost"のアクセスが拒否されました(パスワードを使用:YES)
私はこれがPDOがリモートサーバーの代わりにローカルのMySQLサーバーに接続します。私はローカルの資格情報を使用してみましたが、接続されていましたが、これは明らかに私が望むものではありません。 SQLデータベースへのPDO接続を使用してリモートサーバーに接続する方法を教えてください。 DSNでリモートサーバーを指定したときになぜuser @ localhostを使用しようとしているのですか?
回答:
回答№1の場合は-1OPに代わって投稿されます。
DSNのエラーを検出できなかったとは思わないでください。一定 :)