2008年2月21日木曜日

PHPからリモートMySQLサーバへの接続時にエラー

リモートのMySQLサーバにアクセスするPHPのスクリプトを動作した際に,次のエラーに遭遇しました.

Can't connect to MySQL server on '192.168.2.3' (13)

MySQLクライアントでリモートにアクセスすると接続できるのに,PHPのスクリプトからはできないのです.

具体的には,192.168.2.6のマシンから

mysql --user=hogehoge --password=hogehoge --host=192.168.2.3 --port=3306 hogehoge

というコマンドを入力すると, MySQLサーバとの接続に成功し,SQL文も実行できるのですが,

<?php mysql_connect("192.168.2.3:3306", "hogehoge", "hogehoge"); ?>

というPHPスクリプトを192.168.2.6のマシンで動作させると,上記のエラーメッセージが表示されます.

いろいろ試行錯誤をした結果,クライアント側(192.168.2.6)のSELinuxを解除することで接続することができるようになりました.SELinux全体を解除しなくてもいいと思うのですが,SELinuxについてはまったくの素人なので,解除で済ませました.

0 件のコメント: