PostgreSQL接続の問題(Net LO problem)
2062 ワード
お昼に開発者はPHPが接続できないと言って、彼の接続方式:
キャプチャされたエラーメッセージ:
PDOException Object ( [message:protected] => SQLSTATE[08006] [7] timeout expired[string:private] => [code:protected] => 7 [file:protected] =>/home/shnx/bid.test.com/index.php [line:protected] => 3 [trace:private] => Array ( [0] => Array ( [file] =>/home/shnx/bid.test.com/index.php [line] => 3 [function] => __construct [class] => PDO [type] => -> [args] => Array ( [0] => pgsql:host=localhost;port=5432;dbname=test [1] => develop [2] => develop ) ) ) [errorInfo] => )
データベース・ログ情報を表示すると、同じエラー・メッセージが表示されます.
LOG: could not receive data from client: Connection reset by peer LOG: unexpected EOF on client connection LOG: could not receive data from client: Connection reset by peer LOG: unexpected EOF on client connection
まずpingでサーバーを下ろして、通じていて、更にデータベースに問題があるかどうかを検査して、psqlを使ってローカルにログインします:
データベースは接続可能です.彼の接続情報がhost接続が1つ増えたのを見て、テストも追加して、問題が来たことを発見して、ずっとここに詰まっていて、絞るのも難しいので、最終的には間違いを報告します:
localhostをローカルIPまたは127.0に変更する.0.1結果は同じで、hangはそこで動かなくなった.
このとき、別のホストpingをテストし、他のホストをpingするのは正常です.しかしping 127.0.0.1とかping localhostとかping自体のIPが通じないのがおかしい.ホスト名の設定をもう一度チェックしてpg_hbaとpostgres.conf構成は、問題ありません.IPの設定をもう一度チェックすると、IPのループLOがなくなったことに驚きました.eth 0とeth 1の情報しかありません.なるほど.
ループを追加:
再テストして、正常になりました.以前サーバーが再起動したことを思い出したが、NICが起きず、下NIC(ifdown eth 0とifup eth 0)を再起動したが、ipループが失われたのは初めてだった.まだ原因が分かりませんので、ご了解のお手数ですがお手紙をお願いいたします
'connectionString' =>"pgsql:host=172.25.*.*;port=5432;dbname=test",
'username' => 'develop',
'password' => 'develop'
キャプチャされたエラーメッセージ:
PDOException Object ( [message:protected] => SQLSTATE[08006] [7] timeout expired[string:private] => [code:protected] => 7 [file:protected] =>/home/shnx/bid.test.com/index.php [line:protected] => 3 [trace:private] => Array ( [0] => Array ( [file] =>/home/shnx/bid.test.com/index.php [line] => 3 [function] => __construct [class] => PDO [type] => -> [args] => Array ( [0] => pgsql:host=localhost;port=5432;dbname=test [1] => develop [2] => develop ) ) ) [errorInfo] => )
データベース・ログ情報を表示すると、同じエラー・メッセージが表示されます.
LOG: could not receive data from client: Connection reset by peer LOG: unexpected EOF on client connection LOG: could not receive data from client: Connection reset by peer LOG: unexpected EOF on client connection
まずpingでサーバーを下ろして、通じていて、更にデータベースに問題があるかどうかを検査して、psqlを使ってローカルにログインします:
[postgres@greentea]$ psql -U develop -d test
psql (9.1.2)
Type "help" for help.
test=>
データベースは接続可能です.彼の接続情報がhost接続が1つ増えたのを見て、テストも追加して、問題が来たことを発見して、ずっとここに詰まっていて、絞るのも難しいので、最終的には間違いを報告します:
[postgres@greentea ~]$ psql -h localhost -U develop -d test
psql: could not connect to server:
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
localhostをローカルIPまたは127.0に変更する.0.1結果は同じで、hangはそこで動かなくなった.
このとき、別のホストpingをテストし、他のホストをpingするのは正常です.しかしping 127.0.0.1とかping localhostとかping自体のIPが通じないのがおかしい.ホスト名の設定をもう一度チェックしてpg_hbaとpostgres.conf構成は、問題ありません.IPの設定をもう一度チェックすると、IPのループLOがなくなったことに驚きました.eth 0とeth 1の情報しかありません.なるほど.
ループを追加:
ifconfig lo 127.0.0.1
再テストして、正常になりました.以前サーバーが再起動したことを思い出したが、NICが起きず、下NIC(ifdown eth 0とifup eth 0)を再起動したが、ipループが失われたのは初めてだった.まだ原因が分かりませんので、ご了解のお手数ですがお手紙をお願いいたします