table of contents
other languages
VACUUMDB(1) | PostgreSQL Client Applications | 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
-
計算用於優化器的該數據庫的統計值。
- -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>2003-11-02 | Application |