はまぞうコミュニティで、浜松IT技術者交流会 のサークルを立ち上げました。
http://saakuru.atja.jp/commu_detail.php?commu_id=497&sid=hamazo.tv
浜松周辺に在住のIT技術者の方、情報交換しましょう。
http://saakuru.atja.jp/commu_detail.php?commu_id=497&sid=hamazo.tv
浜松周辺に在住のIT技術者の方、情報交換しましょう。
2008年01月08日
PostgreSQLでパスワードを省略する(.pgpass)
ユーザのホームディレクトリに .pgpass というファイルを用意し、
そのファイルに所定の書き方でパスワードを設定すると、psql などでパスワードを聞かれなくする(入力を省略する)ことができる。
書式は次のとおり。
hostname:port:database:username:password
各項目は * で省略可能。具体的には
ユーザー名:SEFUUMI
パスワード:HOGEHOGE
サーバー、ポート、データベース名はどれも可としたばあい、以下のようになる。
*:*:*:SEFUUMI:HOGEHOGE
また、権限は 600 としなければならない。
これらを設定した上でも、fe_sendauth: no password supplied と出るような場合がある。
#たとえば、CGI で 呼び出したような時など
PostgreSQL のバージョンが 8.1 以前の場合には、環境変数 HOME の指定が無い可能性がある。
環境変数 HOME に .pgpass をおいたフォルダを指定すればよい。
(逆に、既に HOME が設定されていたときには、HOME で指定された場所に .pgpass を置く)
PostgreSQL 8.1 以降では、getpwuidを用いて、実効ユーザIDから HOME を求める方法に変更されているらしいので、こういう問題はなさそうです。
そのファイルに所定の書き方でパスワードを設定すると、psql などでパスワードを聞かれなくする(入力を省略する)ことができる。
書式は次のとおり。
hostname:port:database:username:password
各項目は * で省略可能。具体的には
ユーザー名:SEFUUMI
パスワード:HOGEHOGE
サーバー、ポート、データベース名はどれも可としたばあい、以下のようになる。
*:*:*:SEFUUMI:HOGEHOGE
また、権限は 600 としなければならない。
これらを設定した上でも、fe_sendauth: no password supplied と出るような場合がある。
#たとえば、CGI で 呼び出したような時など
PostgreSQL のバージョンが 8.1 以前の場合には、環境変数 HOME の指定が無い可能性がある。
環境変数 HOME に .pgpass をおいたフォルダを指定すればよい。
(逆に、既に HOME が設定されていたときには、HOME で指定された場所に .pgpass を置く)
PostgreSQL 8.1 以降では、getpwuidを用いて、実効ユーザIDから HOME を求める方法に変更されているらしいので、こういう問題はなさそうです。
この記事へのトラックバック
以前に、PostgreSQLでパスワードを省略する方法を書いたが、Windows だと、少々勝手が違うので、メモ。※PostgreSQL 8.0.0 文書 27.12. パスワードファイル を参照しています。http://www.postgresql.jp/docume...
PostgreSQLでパスワードを省略(Windows編)【WEBシステム開発 技術的備忘録(通称 技忘録)】at 2008年08月01日 09:15