無料スクリプト配布のPHP.TO   PHPの実用的なtips PHPマニュアル MySQLマニュアル Apacheマニュアル PostgreSQLマニュアル マニュアル検索    

18.10. 自動Vacuum作業

以下に示す設定は 自動バキューム 機能の動作を制御します。詳細は 項23.1.6 を参照してください。

autovacuum ( boolean )

サーバがautovacuumランチャデーモンを実行すべきかどうかを管理します。 デフォルトでは有効です。 しかしautovacuumを作動させるためには track_counts も有効でなければなりません。 このパラメータは postgresql.conf ファイル、または、サーバのコマンドラインでのみで設定されます。

このパラメータが無効であってとしてもシステムは、トランザクションIDの周回を防止する必要があれば、autovacuumプロセスを起動することに注意してください。 詳細は 項23.1.5 を参照してください。

log_autovacuum_min_duration ( integer )

少なくとも指定ミリ秒実行した場合、autovacuumで実行される各活動がログに残るようになります。 これをゼロに設定すると、すべてのautovacuumの活動がログに残ります。 マイナス1(デフォルト)はautovacuum活動のログを無効にします。 例えば、これを 250ms に設定すると、250ms以上かかって実行されたautovacuumや解析はすべてログに残ります。 さらに、 -1 以外の値にこのパラメータが設定された場合、競合するロックの存在によりオートバキューム動作が省略されるとメッセージはログに記録されます。 このパラメータを有効にすることは、autovacuum活動の追跡に役に立ちます。 このパラメータは postgresql.conf ファイル、または、サーバのコマンドラインでのみで設定されます。

autovacuum_max_workers ( integer )

同時に実行することができるautovacuumプロセス(autovacuumランチャ以外)の最大数を指定します。 デフォルトは3です。 サーバ起動時のみで設定可能です。

autovacuum_naptime ( integer )

あるデータベースについて実行されるautovacuumデーモンの最小遅延を指定します。 それぞれの周期で、デーモンはそのデータベースを試験し、そしてそのデータベース内のテーブルで必要性が認められると、 VACUUM および ANALYZE コマンドを発行します。 遅延は秒単位で計測され、デフォルトは1分( 1min )です。 このパラメータは postgresql.conf ファイル、または、サーバのコマンドラインでのみで設定されます。

autovacuum_vacuum_threshold ( integer )

いかなる1つのテーブル内に VACUUM をトリガする必要のある、更新もしくは削除されたタプルの最小数を指定します。 デフォルトは50タプルです。 このパラメータは postgresql.conf ファイル、または、サーバのコマンドラインでのみで設定されます。 この設定は pg_autovacuum 内の項目により、それぞれのテーブルに対して上書きすることができます。

autovacuum_analyze_threshold ( integer )

いかなる1つのテーブル内に ANALYZE をトリガする必要のある、挿入、更新、もしくは削除されたタプルの最小数を指定します。 デフォルトは50タプルです。 このパラメータは postgresql.conf ファイル、または、サーバのコマンドラインでのみで設定されます。 この設定はにより、それぞれのテーブルに対して上書きすることができます。

autovacuum_vacuum_scale_factor ( floating point )

VACUUM をトリガするか否かを決定する場合、 autovacuum_vacuum_threshold に追加するテーブル容量の断片を指定します。 デフォルトは0.2(テーブルサイズの20%)です。 このパラメータは postgresql.conf ファイル、または、サーバのコマンドラインでのみで設定されます。 この設定は格納パラメータの変更により、それぞれのテーブルに対して上書きされます。

autovacuum_analyze_scale_factor ( floating point )

ANALYZE をトリガするか否かを決定する場合、 autovacuum_vacuum_threshold に追加するテーブル容量の小部分を指定します。 デフォルトは0.1(テーブルサイズの10%)です。 このパラメータは postgresql.conf ファイル、または、サーバのコマンドラインでのみで設定されます。 この設定は格納パラメータの変更により、それぞれのテーブルに対して上書きされます

autovacuum_freeze_max_age ( integer )

トランザクションID周回を防ぐために VACUUM 操作が強制される前までにテーブルの pg_class . relfrozenxid フィールドが到達できる最大(トランザクションにおける)年代を指定します。 自動バキュームが無効であった時でも、システムは周回を防ぐために自動バキューム子プロセスを起動することに注意してください。

vacuumは同時に pg_clog サブディレクトリから古いファイルの削除を許可します。 これはなぜフォルトが2億トランザクションをやや下回る理由です。 このパラメータはサーバ起動時にのみ設定可能です。 しかし、この設定は格納パラメータの変更により、それぞれのテーブルで減らすことができます。 詳細は 項23.1.5 を参照してください。

autovacuum_vacuum_cost_delay ( integer )

自動 VACUUM 操作に使用されるコスト遅延値を指定します。 -1に指定されると、一定の vacuum_cost_delay の値が使用されます。 デフォルト値は20ミリ秒です。 このパラメータは postgresql.conf ファイル内、または、サーバのコマンドラインのみで設定可能です。 この設定は格納パラメータの変更により、それぞれのテーブルに対して上書きすることができます。

autovacuum_vacuum_cost_limit ( integer )

自動 VACUUM 操作に使用されるコスト限界値を指定します。 (デフォルトの)-1が指定されると、一定の vacuum_cost_limit の値が使用されます。 この値は、実行中の自動バキュームワーカが複数存在する場合ワーカすべてに比例分配されることに注意してください。 したがって各ワーカの制限を足し合わせてもこの変数による制限を超えることはありません。 このパラメータは postgresql.conf ファイル、または、サーバのコマンドラインのみで設定可能です。 この設定は格納パラメータの変更により、それぞれのテーブルに対して上書きすることができます。


powered by SEO.CUG.NET