以下の環境変数を使用して、呼び出し側のプログラムで直接値を指定しなかった場合の接続パラメータのデフォルト値を選ぶことができます。
この値は、PQconnectdb
、PQsetdbLogin
およびPQsetdb
で使用されます。
例えば、簡単なクライアントアプリケーションでは、データベース接続情報を直接プログラムに記述しない方が便利です。
PGHOST
はhost接続パラメータと同様に動作します。
PGHOSTADDR
はhostaddr接続パラメータと同様に動作します。
PGHOST
の代わりに設定して、または、PGHOST
に追加して、DNS検索に要するオーバヘッドをなくすことができます。
PGPORT
はport接続パラメータと同様に動作します。
PGDATABASE
はdbname接続パラメータと同様に動作します。
PGUSER
はuser接続パラメータと同様に動作します。
PGPASSWORD
はpassword接続パラメータと同様に動作します。
この環境変数は、一部のオペレーティングシステムではroot以外のユーザがpsコマンド経由で環境変数を見ることができるなど、セキュリティ上の理由から現在では推奨されていません。
代わりにパスワードファイル(34.15を参照してください)を使用することを検討してください。
PGPASSFILE
はpassfile接続パラメータと同様に動作します。
PGSERVICE
はservice接続パラメータと同様に動作します。
PGSERVICEFILE
はユーザごとの接続サービスファイルを指定します。
設定されていない場合、デフォルトは~/.pg_service.conf
(34.16参照)となります。
PGOPTIONS
はoptions接続パラメータと同様に動作します。
PGAPPNAME
はapplication_name接続パラメータと同様に動作します。
PGSSLMODE
はsslmode接続パラメータと同様に動作します。
PGREQUIRESSL
はrequiressl接続パラメータと同様に動作します。
この環境変数はPGSSLMODE
変数があるため、廃止予定となっています。
両方の変数を設定すると、PGREQUIRESSL
の設定は無視されます。
PGSSLCOMPRESSION
はsslcompression接続パラメータと同様に動作します。
PGSSLCERT
はsslcert接続パラメータと同様に動作します。
PGSSLKEY
はsslkey接続パラメータと同様に動作します。
PGSSLROOTCERT
はsslrootcert接続パラメータと同様に動作します。
PGSSLCRL
はsslcrl接続パラメータと同様に動作します。
PGREQUIREPEER
はrequirepeer接続パラメータと同様に動作します。
PGKRBSRVNAME
はkrbsrvname接続パラメータと同様に動作します。
PGGSSLIB
はgsslib接続パラメータと同様に動作します。
PGCONNECT_TIMEOUT
はconnect_timeout接続パラメータと同様に動作します。
PGCLIENTENCODING
はclient_encoding接続パラメータと同様に動作します。
PGTARGETSESSIONATTRS
はtarget_session_attrs接続パラメータと同様に動作します。
以下の環境変数を使用して、PostgreSQLセッション毎のデフォルト動作を指定することができます。 (また、ユーザ毎、もしくは、データベース毎を単位としたデフォルト動作の設定方法についてはALTER ROLEおよびALTER DATABASEコマンドを参照してください。)
これらの環境変数の正確な値については、SET SQLコマンドを参照してください。
以下の環境変数は、libpqの内部動作を決定します。 これらはコンパイル時のデフォルトを上書きします。