PostgreSQL 9.4.5文書 | |||
---|---|---|---|
前のページ | 上に戻る | 第 31章libpq - C ライブラリ | 次のページ |
以下の環境変数を使用して、呼び出し側のプログラムで直接値を指定しなかった場合の接続パラメータのデフォルト値を選ぶことができます。
この値は、PQconnectdb
、PQsetdbLogin
およびPQsetdb
で使用されます。
例えば、簡単なクライアントアプリケーションでは、データベース接続情報を直接プログラムに記述しない方が便利です。
PGHOSTはhost接続パラメータと同様に動作します。
PGHOSTADDRはhostaddr接続パラメータと同様に動作します。 PGHOSTの代わりに設定して、または、PGHOSTに追加して、DNS検索に要するオーバヘッドをなくすことができます。
PGPORTはport接続パラメータと同様に動作します。
PGDATABASEはdbname接続パラメータと同様に動作します。
PGUSERはuser接続パラメータと同様に動作します。
PGPASSWORDはpassword接続パラメータと同様に動作します。 この環境変数は、一部のオペレーティングシステムではroot以外のユーザがpsコマンド経由で環境変数を見ることができるなど、セキュリティ上の理由から現在では推奨されていません。 代わりに~/.pgpass(項31.15を参照してください)を使用することを検討してください。
PGPASSFILEは検索に使用するパスワードファイルの名前を指定します。 指定していなければ、デフォルトの~/.pgpass(項31.15を参照してください)となります。
PGSERVICEはservice接続パラメータと同様に動作します。
PGSERVICEFILEはユーザごとの接続サービスファイルを指定します。 設定されていない場合、デフォルトは~/.pg_service.conf(項31.16参照)となります。
PGREALMは、PostgreSQLで使用するKerberosのレルムがローカルのものと異なる場合に、そのレルムを設定します。 PGREALMが設定されると、libpqアプリケーションは設定されたレルム用のサーバと認証を行い、また、別のチケットファイルを使って、ローカルのチケットファイルと競合しないようにします。 この環境変数は、サーバがGSSAPIによる認証を選択した場合にのみ使われます。
PGOPTIONSはoptions接続パラメータと同様に動作します。
PGAPPNAMEはapplication_name接続パラメータと同様に動作します。
PGSSLMODEはsslmode接続パラメータと同様に動作します。
PGREQUIRESSLはrequiressl接続パラメータと同様に動作します。
PGSSLCOMPRESSIONはsslcompression接続パラメータと同様に動作します。
PGSSLCERTはsslcert接続パラメータと同様に動作します。
PGSSLKEYはsslkey接続パラメータと同様に動作します。
PGSSLROOTCERTはsslrootcert接続パラメータと同様に動作します。
PGSSLCRLはsslcrl接続パラメータと同様に動作します。
PGREQUIREPEERはrequirepeer接続パラメータと同様に動作します。
PGKRBSRVNAMEはkrbsrvname接続パラメータと同様に動作します。
PGGSSLIBはgsslib接続パラメータと同様に動作します。
PGCONNECT_TIMEOUTはconnect_timeout接続パラメータと同様に動作します。
PGCLIENTENCODINGはclient_encoding接続パラメータと同様に動作します。
以下の環境変数を使用して、PostgreSQLセッション毎のデフォルト動作を指定することができます。 (また、ユーザ毎、もしくは、データベース毎を単位としたデフォルト動作の設定方法についてはALTER ROLEおよびALTER DATABASEコマンドを参照してください。)
PGDATESTYLEはデフォルトの日付/時刻表現形式を設定します。 (SET datestyle TO ...と等価です。)
PGTZはデフォルトの時間帯を設定します。 (SET timezone TO ...と等価です。)
PGGEQOは遺伝的問い合わせオプティマイザのデフォルトのモードを設定します。 (SET geqo TO ...と等価です。)
これらの環境変数の正確な値については、SET SQLコマンドを参照してください。
以下の環境変数は、libpqの内部動作を決定します。 これらはコンパイル時のデフォルトを上書きします。
PGSYSCONFDIRはpg_service.confファイルがあるディレクトリを設定します。 また今後のバージョンでは他のシステム全体の設定ファイルとなるかもしれません。
PGLOCALEDIRは国際化メッセージ用のlocaleファイルがあるディレクトリを設定します。