vacuumdb [connection-option...] [--full | -f] [--verbose | -v] [--analyze | -z] [--table | -t table
[( column [,...] )]
] [dbname]
vacuumdb [connection-options...] [--all | -a] [--full | -f] [--verbose | -v] [--analyze | -z]
vacuumdbは、PostgreSQLデータベースの不要領域の掃除(クリーニング)を行うユーティリティです。 また、vacuumdbはPostgreSQL問い合わせオプティマイザで使用される内部的な統計情報も生成します。
vacuumdb は、VACUUM SQLコマンドのラッパです。 これ以外の方法でサーバにアクセスしてデータベースの掃除を行っても特別な違いはありません。
vacuumdb では、下記のコマンドライン引数を指定できます。
全てのデータベースの掃除を行ないます。
不要領域の掃除または解析の対象となるデータベース名を指定します。 データベース名が指定されておらず、-a (または --all) も使用されていない場合、データベース名はPGDATABASE環境変数から読み取られます。 この変数も設定されていない場合は、接続のために指定されたユーザ名が使用されます。
vacuumdbが生成し、サーバに送るコマンドをエコー表示します。
"完全な(full)"掃除を行ないます。
応答を表示させません。
tableのみの掃除または解析を行ないます。 列名は--analyzeオプションがある場合にのみ設定できます。
ティップ: 掃除する列を指定する場合は、シェルから括弧をエスケープさせる必要があるでしょう。 (後述の例を参照してください。)
処理実行中に詳細な情報を表示します。
オプティマイザで使用される、データベースの統計情報を計算します。
vacuumdb には、以下に記す接続パラメータ用のコマンドライン引数も指定することもできます。
サーバが稼働しているマシンのホスト名を指定します。 ホスト名がスラッシュから始まる場合、Unixドメインソケット用のディレクトリとして使用されます。
サーバが接続を監視するTCPポートもしくはUnixドメインソケットファイルの拡張子を指定します。
接続するためのユーザ名を指定します。
強制的にパスワードのプロンプトを表示します。
問題が発生した場合、潜在する問題とエラーメッセージについての説明はVACUUM と psqlを参照してください。 データベースサーバが指定したホストで稼働している必要があります。 また、libpq のフロントエンドライブラリの、あらゆるデフォルトの設定や環境変数が適応されます。
vacuumdbは、PostgreSQLサーバに何度も接続しなければならない場合があり、その度にパスワードが必要になります。 そのような場合には~/.pgpassファイルを用意しておくと便利です。 詳細は項27.12を参照してください。