5.1. パラメータの設定

5.1.1. パラメータ名とその値

全てのパラメータの名前は大文字と小文字を区別しません。 それぞれのパラメータは、論理値、整数、浮動小数点、文字列、またはenum(列挙型)の5つの型のいずれかの値を取ります。 型はパラメータをセットするための記法を定義します。

5.1.2. 設定ファイルによるパラメータ操作

これらのパラメータを設定する最も基本的な方法は、pgpool.confファイルを編集することです。 ソースコードからインストールした場合、$prefix/etc/pgpool.confに配置されています。 このファイルがどういったものかの例を示します。

     # This is a comment
     listen_addresses = 'localhost'
     port = 9999
     serialize_accept = off
     reset_query_list = 'ABORT; DISCARD ALL'
    

1つの行毎に1つのパラメータが指定されます。 名前と値の間の等号はオプションです。 引用符の中の空白(white space)を除き、空白は特に意味を持たず、何もない行は無視されます。 ハッシュ記号(#)はその行の後の表記がコメントであることを意味します。 単純でない識別子、または数値でないパラメータ値は単一引用符で括られなければなりません。 パラメータ値の中に単一引用符を埋め込む場合、単一引用符を二つ(推奨)もしくはバックスラッシュ-引用符で括ります。

この方法によりクラスタに対してデフォルト値が設定されます。 上書きされない限り、アクティブなセッションが見るのはこの値です。 次の節では、管理者やユーザがこれらのデフォルト値を上書きする方法を説明します。

設定ファイルはメインサーバプロセスがSIGHUP信号を受け取ると何時でも 再読み込みされます。 手っ取り早く行なうには、コマンドラインからpgpool reloadを実行します。 メインpgpoolプロセスは同時にこの信号を、次のセッションが同様に新しい値を入手できるように、全ての子プロセスに伝播します。 いくつかのパラメータはサーバの起動時のみ設定されます; 設定ファイル中のそれらのエントリのいかなる変更も、サーバが再起動されるまで無視されます。 設定ファイル内で無効なパラメータが設定された場合は同様に(ログには残りますが)SIGHUP処理中に無視されます。

5.1.3. 設定ファイルの内容の管理

Pgpool-IIpgpool.confファイルを複数のファイルに分割して記述する方法を提供しています。 機能やサーバ固有のパラメータの設定を分割したい場合に有用です。 次のようにincludeディレクティブを追加します。

     include = 'filename'
    

ファイル名が絶対パスでない場合、参照する設定ファイルを含むディレクトリからの相対パスであると受け取られます。includeコマンドは入れ子にすることができます。

5.1.4. SQLを通じたパラメータ操作

Pgpool-IIはまた2つのSQL形式のコマンドを使ってセッションローカルの設定の参照や変更を行うことができます。