他のバージョンの文書10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

vacuumdb

Name

vacuumdb -- PostgreSQL データベースの不要領域の回収と解析

Synopsis

vacuumdb [connection-options...] [[-d] dbname] [--full | -f] [--verbose | -v] [--analyze | -z] [--table 'table [( column [,...] )]']

vacuumdb [connection-options...] [--all | -a] [--full | -f] [--verbose | -v] [--analyze | -z]

入力

vacuumdbでは、下記のコマンドライン引数を指定できます。

-d dbname
--dbname dbname

不要領域の掃除または解析の対象となるデータベース名を指定します。

-a
--all

すべてのデータベースをVacuumします。

-f
--full

"すべての" vacuumを行ないます。

-v
--verbose

処理実行中に詳細な情報を表示します。

-z
--analyze

オプティマイザで使用される、データベースの統計情報を計算します。

-t table [ (column [,...]) ]
--table table [ (column [,...]) ]

tableのみの掃除または解析を行ないます。列名は--analyzeオプションがある場合にのみ設定できます。

Tip: vacuumする列を指定する場合は、シェルから括弧をエスケープさせる必要があるかもしれません。

vacuumdbは、下記に記す接続パラメータ用のコマンドライン引数を指定することもできます。

-h host
--host host

サーバが動作しているマシンのホスト名を指定します。ホストがスラッシュから始まる場合は、Unixドメインソケットのディレクトリとして使用されます。

-p port
--port port

サーバが接続を監視するインターネットTCP/IPポート、またはローカルUnixドメインソケットファイルの拡張子を指定します。

-U username
--username username

接続するためのユーザ名を指定します。

-W
--password

強制的にパスワードのプロンプトを表示します。

-e
--echo

vacuumdbが生成し、サーバに送るコマンドを表示させます。

-q
--quiet

返答を表示させないようにします。

出力

VACUUM

すべて正常に終了しました。

vacuumdb: Vacuum failed.

異常が発生しました。vacuumdbは単にラッパースクリプトです。エラーメッセージと可能性のある問題に関する詳細は VACUUMpsqlをご覧下さい。

説明

vacuumdbは、PostgreSQL データベースの不要領域の掃除を行うユーティリティです。また、 vacuumdbPostgreSQL 問い合わせオプティマイザで使用される内部的な統計情報も生成します。

vacuumdbは、PostgreSQLの対話的端末psql経由で実行されるバックエンドコマンドVACUUMのシェルスクリプトラッパーです。この方法以外の方法でデータベースの掃除を行っても特別な違いはありません。スクリプトからpsqlを参照することができ、かつデータベースサーバが指定したホストで稼働している必要があります。また、psqllibpqのフロントエンドライブラリの、あらゆるデフォルトの設定や環境変数が適応されます。

使用方法

testというデータベースを掃除するには、下記のコマンドを実行します。

$ vacuumdb test

bigdbというデータベースの掃除とオブティマイザ用の解析を行なう場合には下記のコマンドを実行します。

$ vacuumdb --analyze bigdb

xyzzyというデータベースのfooという1つのテーブルの掃除と、そのテーブルのbarという1つの列に対してオブティマイザ用の解析を行なう場合には、下記のコマンドを実行します。

$ vacuumdb --analyze --verbose --table 'foo(bar)' xyzzy