こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

pgpassが有効にならない?

WEBサーバー「A」とDBサーバー「B」が存在しています。
この時、「A」から「B」への接続をCGIからpsqlをコールすることで行っています。
認証についてはpgpassを利用しているつもりなのですが、
どうもこれが有効になっていないようで、接続ができません。
どうやったら接続できるようになるでしょうか??
              皆様のお力をお貸し願えれば幸いです。

pgpassはユーザー「X」が所有者となっておりパーミッションは「600」となっています。また「X」の$HOMEに置かれています。

また、同様のテスト環境が存在するのですが、そちらでの接続はうまくいっています。
もしかしてテスト環境でもpgpassが効いてるわけではなく、別の方法で接続が確立されているということもあるでしょうか?

環境は以下の通りです。
本番サーバー
 Linux [サーバー名] 2.4.20-8smp #1 SMP Thu Mar 13 17:45:54 EST 2003 i686 i686 i386 GNU/Linux
本番DB
 Linux [サーバー名].in.[ドメイン] 2.4.20-8smp #1 SMP Thu Mar 13 17:45:54 EST 2003 i686 i686 i386 GNU/Linux
テストサーバー
 Linux [サーバー名] 2.4.20-8smp #1 SMP Thu Mar 13 17:45:54 EST 2003 i686 i686 i386 GNU/Linux
テストDB
 Linux [サーバー名] 2.4.20-8smp #1 SMP Thu Mar 13 17:45:54 EST 2003 i686 i686 i386 GNU/Linux

 Perlは v5.8.0 (perl -v にて確認)
 PostgreSQLは 7.4.7 (psql --version にて確認)

投稿日時 - 2005-11-10 17:55:38

QNo.1770532

すぐに回答ほしいです

質問者が選んだベストアンサー

推測ですみませんが。。いろいろやってみましょう。

試しに

1)CGIをキックしたユーザのホームディレクトリに.pgpassをおいてみてはどうですか??

2)psqlで接続する-Uで指定したユーザのホームディレクトリに.pgpassをおいてみてはどうですか??

投稿日時 - 2005-11-10 18:14:09

補足

> 1)CGIをキックしたユーザのホームディレクトリに.pgpassをおいてみてはどうですか??
 CGIをキックするユーザーとなるとアパッチで設定されているnobodyというユーザーになるようなのですが、
 このユーザーのホームは「/」となっているようです。
 一応そこにおいて試してみました。(所有者root パーミッション600)
 ・・・結果は失敗でした。

> 2)psqlで接続する-Uで指定したユーザのホームディレクトリに.pgpassをおいてみてはどうですか??
 やはりダメでした。
 ただ、テストサーバーではこの場所に置かれています。

投稿日時 - 2005-11-10 18:19:19

ANo.1

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

そうですかぁ。。。

> 1)CGIをキックしたユーザのホームディレクトリに.pgpassをおいてみてはどうですか??
 CGIをキックするユーザーとなるとアパッチで設定されているnobodyというユーザーになるようなのですが、
 このユーザーのホームは「/」となっているようです。
 一応そこにおいて試してみました。(所有者root パーミッション600)
 ・・・結果は失敗でした。

> 2)psqlで接続する-Uで指定したユーザのホームディレクトリに.pgpassをおいてみてはどうですか??
 やはりダメでした。
 ただ、テストサーバーではこの場所に置かれています。

本当に憶測ですみませんが、-Uで指定したユーザのホームディレクトリに.pgpassを配置したあと、PostgreSQLを再起動してもだめですかねぇ・・・。

投稿日時 - 2005-11-10 18:35:15

お礼

とりあえず以下のような方法で解決しましたので、ひとまず質問は締め切らせていただきます。
いろいろとアドバイスいただきありがとうざいました。

my $command = 'echo [パスワード] | psql -h [ホストIP] -U [ユーザー] -c "select * from test" |'

投稿日時 - 2005-11-10 18:50:50

あなたにオススメの質問