VACUUMDB(1)

NAME
vacuumdb - 收集垃圾並且分析一個PostgreSQL 資料庫

SYNOPSIS

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 ]

DESCRIPTION 描述

vacuumdb 是一個用於整理 PostgreSQL 資料庫的工具。 vacuumdb 還將會生成用於 PostgreSQL 查詢最佳化器的內部統計資料。

vacuumdb 是 SQL 命令 VACUUM [vacuum(7)] 的封裝。 因此，用哪種方法清理資料庫都沒什麼特別的。

OPTIONS 選項

vacuumdb 接受下列命令列引數：

-a

--all
     清理所有資料庫。

[-d] dbname

[--dbname] dbname
     宣告要被清理或分析的資料庫名稱。 如果沒有宣告這個引數並且沒有使用 -a（或 --all）， 那麼從環境變數 PGDATABASE 裡讀取資料庫名。 如果那個也沒有設定，則使用連線的使用者名稱。

-e

--echo
     回顯 vacuumdb 生成的查詢並且把它傳送到伺服器。

-f

--full
     執行"完全"清理．

-q

--quiet
     不顯示響應。

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

--table table [ (column [,...]) ]
     只是清理或分析 table。 欄位名稱只是在與 --analyze 選項聯合使用時才需要宣告。

    Tip: 提示: 如果你聲明瞭要清理的欄位，你可能不得不在 shell 上逃逸圓括弧（見下面的例子）。

-v

--verbose
     在處理過程中列印詳細資訊。

-z

--analyze
     計算用於最佳化器的該資料庫的統計值。

vacuumdb 還接受下面的命令列引數用於聯接引數：

-h host

--host host
     宣告執行伺服器的機器的主機名。 如果主機名以斜扛開頭，則它被用做到 Unix 域套接字的路徑。

-p port

--port port
     宣告伺服器在偵聽聯接的 TCP 埠號或一個本地的 Unix 域套接字檔案控制代碼。

-U username

--username username
     進行聯接的使用者名稱。

-W

--password
     強制口令輸入提示。

ENVIRONMENT 環境

PGDATABASE

PGHOST

PGPORT

PGUSER
     預設連線引數

DIAGNOSTICS 診斷

 如果出差錯了。參閱 VACUUM [vacuum(7)] 和 psql(1) 獲取關於錯誤資訊和可能問題的詳細描述。 資料庫伺服器必須在目標主機上執行。同時，前端庫 libpq 使用的任何預設連線設定和環境變數都適用。

NOTES 注意

vacuumdb 可能需要與 PostgreSQL 伺服器連線若干次，每次都詢問口令。在這種情況下，設立一個 $HOME/.pgpass 是比較方便的。參閱 Section 27.11 獲取更多資訊。

EXAMPLES 例子

 整理資料庫 test：

$ vacuumdb test

 為最佳化器清理和分析一個名為 bigdb 的資料庫：

$ vacuumdb --analyze bigdb

 為清理資料庫xyzzy裡表 foo， 並且為最佳化器分析列 bar：

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

SEE ALSO 參見
VACUUM [vacuum(7)]

譯者
Postgresql 中文網站 何偉平 <laser@pgsqldb.org>

跋
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh