Pgpool-II 4.4.2 文書 | |||
---|---|---|---|
前のページ | 上に戻る | 第 5章サーバの設定 | 次のページ |
全てのパラメータの名前は大文字と小文字を区別しません。 それぞれのパラメータは、論理値、整数、浮動小数点、文字列、またはenum(列挙型)の5つの型のいずれかの値を取ります。 型はパラメータをセットするための記法を定義します。
論理型: 値は以下のいずれかを取ることができます。 on, off, true, false, yes, no, 1, 0 (すべて大文字小文字の区別なし) あるいは、曖昧でなければこれらの先頭から数文字を省略して使うこともできます。
文字列型: 一般に、単一引用符の中に値を入れます。 単一引用符を値として使う場合は単一引用符を重ねます。 なお、値が単純な数字や識別子である場合は、通常引用符は省略できます。
数値型(整数型と浮動小数点型): 小数点は浮動小数点型のパラメータでのみ使用できます。 1000の位取りは使わないでください。 引用符は必要ありません。
単位付きの数値: メモリの量や時間について記述する数値型のパラメータは暗黙的な単位を持ちます。 単位はキロバイト、メガバイト、ミリ秒、秒、分です。 例を示します。
search_primary_node_timeout = 6min memqcache_total_size = 64MB
修飾無しの数値によるこれらの設定においては、 パラメータごとのデフォルト値が採用されます。
単位名は大文字小文字を区別し、数値と単位の間に空白があっても構いません。 有効なメモリの単位はkB (キロバイト)、MB (メガバイト)、 GB (ギガバイト), TB (テラバイト)です。
有効な時間の単位はms (ミリ秒)、s (秒)、min (分)、h (時間)、d (日数) です。
列挙型: 列挙型のパラメータは文字列パラメータと同じように記述します。 ただ、使用できる文字列の種類が決まっているだけです。 列挙型の値は大文字小文字を区別しません。
これらのパラメータを設定する最も基本的な方法は、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処理中に無視されます。
Pgpool-IIはpgpool.confファイルを複数のファイルに分割して記述する方法を提供しています。 機能やサーバ固有のパラメータの設定を分割したい場合に有用です。 次のようにincludeディレクティブを追加します。
include = 'filename'
ファイル名が絶対パスでない場合、参照する設定ファイルを含むディレクトリからの相対パスであると受け取られます。includeコマンドは入れ子にすることができます。
Pgpool-IIはまた2つのSQL形式のコマンドを使ってセッションローカルの設定の参照や変更を行うことができます。
PGPOOL SHOWコマンドを使ってすべてのパラメータの現在の値を調べることができます。
PGPOOL SETコマンドを使ってセッション内でローカルに変更できるパラメータの値を変更することができます。 他のセッションには影響を与えません。