clusterdb

Name

clusterdb -- 對一個PostgreSQL資料庫進行建簇

Synopsis

clusterdb [connection-option...] [--table | -t table ] [dbname]
clusterdb [connection-option...] [--all | -a]

描述

clusterdb 是一個用於對某個 PostgreSQL 資料庫中的資料表進行重新建簇的工具。它尋找以前建過簇的資料表,然後在上次用過的同一個索引上再次建簇。將不會動那些從未建簇的資料表。

clusterdb 是對 SQL 命令 CLUSTER 的封裝。 使用這兩種方法對資料庫建簇實際上沒有任何區別。

選項

clusterdb 接受下列命令行參數:

-a
--all

對所有資料庫建簇。

-a
--all

對所有資料庫建簇。

[-d] dbname
[--dbname] dbname

聲明要建簇的資料庫名字。如果沒有聲明這個並且沒有使用 -a(或者 --all), 那麼資料庫名從環境變量 PGDATABASE 中讀取。 如果那個也沒有設置,那麼使用用於連接的用戶名。

-e
--echo

回顯 clusterdb 生成並發送給伺服器的命令。

-q
--quiet

不要顯示響應。

-t table
--table table

只對資料表 table 建簇。

clusterdb 還接受下列命令行參數獲取連接參數:

-h host
--host host

聲明伺服器執行所在的機器的主機名。如果數值以斜槓開頭, 那麼就用作 Unix 域套接字的目錄。

-p port
--port port

聲明伺服器監聽的網際網 TCP 連接埠或者本地 Unix 域套接字文件擴展。

-U username
--username username

進行連接的用戶名

-W
--password

強制提示指令。

環境

PGDATABASE
PGHOST
PGPORT
PGUSER

預設連接參數。

診斷

出現困難的時候,參閱 CLUSTERpsql 獲取有關可能的錯誤和錯誤訊息的討論。 資料庫伺服器必須在目標主機上執行。同樣,任何預設連接設置和 libpq 前端庫使用的環境變量都將得以應用。

例子

對資料庫 test 建簇:

$ clusterdb test

對一個叫做 xyzzy 的資料庫裡的資料表 foo 建簇:

$ clusterdb --table foo xyzzy

又見

CLUSTER