PostgreSQL 9.0.4文書 | ||||
---|---|---|---|---|
前のページ | 巻戻し | 付録 F. 追加で提供されるモジュール | 早送り | 次のページ |
vacuumloはPostgreSQLデータベースから"孤児になった"ラージオブジェクトをすべて削除する、単純なユーティリティです。 データベース内でoidまたはloデータ型列内にまったく現れないOIDを持つすべてのラージオブジェクト(LO)を"孤児になった"ラージオブジェクトとみなします。
これを使用する場合にはまた、contrib/lo(項F.17参照)内のlo_manage
トリガに興味を持つかもしれません。
lo_manage
は初期段階で孤児になったLOの生成を防止しようと試みます。
vacuumlo [options] database [database2 ... databaseN]
コマンドラインで指名されたすべてのデータベースに対して処理が行われます。 利用可能なオプションは以下の通りです。
多くの進行メッセージを出力します。
ラージオブジェクトの削除を行わず、単に何が行われるはずかを示します。
接続ユーザ名です。
パスワード入力のプロンプトを出さなくします。もし、サーバがパスワード認証を必要としており、.pgpassファイルを用いる様な、 プロンプト入力とは別の手段を通してパスワードを利用できない場合は、接続に失敗します。このオプションは、バッチ処理やスクリプト処理の様なパスワードを入力するユーザがいないケースで有効です。
vacuumloは強制的にデータベースに接続する前にパスワード入力を促します。
サーバがパスワード認証を要求する場合vacuumloは自動的にパスワード入力を促しますので、これが重要になることはありません。 しかし、vacuumloは、サーバにパスワードが必要かどうかを判断するための接続試行を無駄に行います。 こうした余計な接続試行を防ぐために-Wの入力が有意となる場合もあります。
データベースサーバのホスト名です。
データベースサーバのポート番号です。
まず、データベース内のラージオブジェクトのOIDをすべて含む一時テーブルを構築します。
そしてデータベース内でoid型またはlo型を型として持つ全列をスキャンし、一時テーブルから一致する項目を削除します。
一時テーブルに残った項目を孤児LOと識別します。 これらが削除されます。
Peter Mount <peter@retep.org.uk>