[pgsql-jp: 25645] Re: PostgreSQL server: (null)
Takao Kato
sirius @ jp.fujitsu.com
2002年 4月 22日 (月) 09:13:02 JST
加藤@川崎です。
> PostgreSQL+Apache*+PHP4の初心者です。
>
> ブラウザで見ることが出来るはずなのですが、ブラウザ上には以下の
> エラーメッセージしか。
> Warning: Unable to connect to PostgreSQL server: (null) in
> /usr/lib/apache/phplib-7.2c/php/db_pgsql.inc on line 47
> Database error: Link-ID == false, pconnect failed
> PostgreSQL Error: 0 ()
> Session halted.
ここまで来るとPHPの問題なのでPHP-ML行きかなぁ〜 ^^;
それと、別の方から突っ込みが入るかも知れませんが「初心者」と言う
言葉はこのMLの参加者には通用しないと思った方が良いですよ。
# かく言う私もネットワークに多少強いだけの初心者レベルです ^^;;
もうちょっとマンモス本orのPDF(PHPの内容)やシーラカンス本(ここ)を
読んで理解を深めることを奨めます。あとトラブルにぶつかったら
「一番簡単な形」を最初に実行して動作を確認するなどの方法を実行す
る方が良いと思います。
ちなみに本に付いている難しいサンプルは「かなりの確立」で失敗しま
す。理由としては必要条件が別々に書かれているため、例えばapache
ユーザを事前に作成しておく説明が実際にスクリプト(CD-ROMの中)とは
かなり離れた場所に書かれていたりするため、それが原因で動かなかっ
たりします。ですから、一番簡単な例をまず最初に実行するのが基本で
しょう。と僕は考えています。その上で、難しいサンプルスクリプトを
動かして見ると結構エラーの理由が想像つくものです。
今回のエラーメッセージも繰り返し失敗すれば気がつくものです ^^;;;
# 結構失敗したものだ(大笑)
で、本題ですがpg_pconnectでデータベースを開けられなかっただけの
話でしょう。pg_connect/pg_pconnectまわりで思いつく限り原因を書く
と、
・サーバが存在しない PHP
== サーバ名が間違っているなど
・(サーバはあるけれど)サービスが存在しない PHP or PostgreSQL
== TCPポートが開いていないなど
・データベース(or サービス)へのアクセスが許されていない PostgreSQL
== パーミッションなど
・データベースが存在しない PostgreSQL
があります。で、このうちの一つが答えになりますが、それは最初のメッ
セージに答えが隠されています。少し考えて下さい。ヒントは現段階では
PHPだけに問題があります。(ヒントではなく答えだな)
# あれだけあからさまにエラーが書かれているのだから気がつくだろう
# たぶん(自問自答)
では
----
加藤@川崎(今回は汗(^^;)ばっかり流しているなぁ)
お便りは kato @ lantc.cs.fujitsu.co.jp まで
pgsql-jp メーリングリストの案内