上で説明したpostgresql.confファイルに加え、PostgreSQLは他の2つの手作業で編集される構成ファイルを使用し、それらは(第20章で使用法が説明されている)クライアント認証の管理をします。デフォルトで全ての3つの構成ファイルはデータベースクラスタの data ディレクトリに格納されます。この節で記載されているオプションにより、構成ファイルを何処にでも置くことが可能です。(そのようにすると管理がしやすくなります。具体的には、構成ファイルを分けて保存することで、構成ファイルの適切なバックアップを確実に行うことが容易になります。)
data_directory
(string)データ格納に使用するディレクトリを指定します。このオプションはサーバ起動時のみ設定可能です。
config_file
(string)主サーバ構成ファイルを指定します(慣習的にpostgresql.confと呼ばれます)。このオプションは postmaster コマンド・ライン上でのみ設定可能です。
hba_file
(string)ホストベース認証(HBA)用のファイルを指定します(慣習的にpg_hba.confと呼ばれます)。このオプションはサーバ起動時のみ設定可能です。
ident_file
(string)ident認証用の構成ファイルを指定します(慣習的に pg_ident.confと呼ばれます)。このオプションはサーバ起動時のみ設定可能です。
external_pid_file
(string)サーバ管理プログラムの使用のためにpostmasterが作成しなくてはならない、追加のプロセス識別子(PID)ファイルの名前を指定します。このオプションはサーバ起動時のみ設定可能です。
デフォルトのインストールでは、上記のいかなるオプションも明示的に設定されません。その代わり、data ディレクトリは-D
コマンド・ラインオプション、もしくはPGDATA環境変数で指定され、構成ファイル全てはその data ディレクトリ内に格納されます。
data ディレクトリ以外の場所に構成ファイルを格納したいのであれば、postmasterの-D
コマンド・ラインオプション、もしくはPGDATA環境変数で構成ファイルの場所を指し示さし、そして data ディレクトリが実際どこに存在するのかを示すため、postgresql.confにて(もしくはコマンド・ライン上で)オプションを設定しなければなりません。data_directory
は、構成ファイルの場所ではなく、data ディレクトリの位置に関して、-D
およびPGDATAを上書きすることに注意してください。
お望みであれば、config_file
、hba_file
、そして/もしくは ident_file
を使用し、構成ファイルの名前と場所を個別に指定することができます。config_file
はpostmasterコマンド・ラインによってのみ指定されますが、その他は主構成ファイル内で設定できます。全ての3つのオプションとdata_directory
が明示的に設定されていれば、-D
およびPGDATAを指定する必要はありません。
これらのいかなるオプションを設定する場合、相対パスは、その中でpostmasterが起動されるディレクトリから見た相対パスとして解釈されます。