↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

Wiki / 命令行工具

clusterdb

clusterdb — cluster a PostgreSQL database

当前阅读 PG 18·选择有来源记录的版本

此版本暂无所选语言的定义,以下显示原始英文内容。

Documented executable
clusterdb
Executable version
18.6
Reference inventory
Client applications
Option definition groups
13
environment
map[description:Default connection parameters name:PGDATABASE PGHOST PGPORT PGUSER], map[description:Specifies whether to use color in diagnostic messages. Possible values are always , auto and never . name:PG_COLOR]
manual path
app-clusterdb.html
signature
clusterdb [ connection-option ...] [ option ...] [ --table | -t table ] ... [ dbname | -a | --all ]
synopsis
clusterdb [ connection-option ...] [ option ...] [ --table | -t table ] ... [ dbname | -a | --all ]

版本定义 PG 18

clusterdb

clusterdb — cluster a PostgreSQL database

Synopsis

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

Description

clusterdb is a utility for reclustering tables in a PostgreSQL database. It finds tables that have previously been clustered, and clusters them again on the same index that was last used. Tables that have never been clustered are not affected.

clusterdb is a wrapper around the SQL command CLUSTER. There is no effective difference between clustering databases via this utility and via other methods for accessing the server.

Options

clusterdb accepts the following command-line arguments:

-a
--all

Cluster all databases.

[-d] dbname
[--dbname=]dbname

Specifies the name of the database to be clustered, when -a/--all is not used. If this is not specified, the database name is read from the environment variable PGDATABASE. If that is not set, the user name specified for the connection is used. The dbname can be a connection string. If so, connection string parameters will override any conflicting command line options.

-e
--echo

Echo the commands that clusterdb generates and sends to the server.

-q
--quiet

Do not display progress messages.

-t table
--table=table

Cluster table only. Multiple tables can be clustered by writing multiple -t switches.

-v
--verbose

Print detailed information during processing.

-V
--version

Print the clusterdb version and exit.

-?
--help

Show help about clusterdb command line arguments, and exit.

clusterdb also accepts the following command-line arguments for connection parameters:

-h host
--host=host

Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket.

-p port
--port=port

Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections.

-U username
--username=username

User name to connect as.

-w
--no-password

Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.

-W
--password

Force clusterdb to prompt for a password before connecting to a database.

This option is never essential, since clusterdb will automatically prompt for a password if the server demands password authentication. However, clusterdb will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt.

--maintenance-db=dbname

When the -a/--all is used, connect to this database to gather the list of databases to cluster. If not specified, the postgres database will be used, or if that does not exist, template1 will be used. This can be a connection string. If so, connection string parameters will override any conflicting command line options. Also, connection string parameters other than the database name itself will be re-used when connecting to other databases.

Environment

PGDATABASE
PGHOST
PGPORT
PGUSER

Default connection parameters

PG_COLOR

Specifies whether to use color in diagnostic messages. Possible values are always, auto and never.

This utility, like most other PostgreSQL utilities, also uses the environment variables supported by libpq (see Section 32.15).

Diagnostics

In case of difficulty, see CLUSTER and psql for discussions of potential problems and error messages. The database server must be running at the targeted host. Also, any default connection settings and environment variables used by the libpq front-end library will apply.

Examples

To cluster the database test:

$ clusterdb test

To cluster a single table foo in a database named xyzzy:

$ clusterdb --table=foo xyzzy

See Also

CLUSTER

Documented options

Option and argumentsDescription
-a --allCluster all databases.
-e --echoEcho the commands that clusterdb generates and sends to the server.
-q --quietDo not display progress messages.
-t table --table= tableCluster table only. Multiple tables can be clustered by writing multiple -t switches.
-v --verbosePrint detailed information during processing.
-V --versionPrint the clusterdb version and exit.
-? --helpShow help about clusterdb command line arguments, and exit.
-h host --host= hostSpecifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket.
-p port --port= portSpecifies the TCP port or local Unix domain socket file extension on which the server is listening for connections.
-U username --username= usernameUser name to connect as.
-w --no-passwordNever issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.
-W --passwordForce clusterdb to prompt for a password before connecting to a database.
--maintenance-db= dbnameWhen the -a / --all is used, connect to this database to gather the list of databases to cluster. If not specified, the postgres database will be used, or if that does not exist, template1 will be used. This can be a connection string . If so, connection string parameters will override any conflicting command line options. Also, connection string parameters other than the database name itself will be re-used when connecting to other databases.

Environment variables

VariableMeaning
PGDATABASE PGHOST PGPORT PGUSERDefault connection parameters
PG_COLORSpecifies whether to use color in diagnostic messages. Possible values are always , auto and never .

比较版本

完整来源事实

options

map[description:Cluster all databases. names:[-a --all] signature:-a --all source_url:/docs/18/app-clusterdb.html summary:Cluster all databases.], map[description:Echo the commands that clusterdb generates and sends to the server. names:[-e --echo] signature:-e --echo source_url:/docs/18/app-clusterdb.html summary:Echo the commands that clusterdb generates and sends to the server.], map[description:Do not display progress messages. names:[-q --quiet] signature:-q --quiet source_url:/docs/18/app-clusterdb.html summary:Do not display progress messages.], map[description:Cluster table only. Multiple tables can be clustered by writing multiple -t switches. names:[-t table --table= table] signature:-t table --table= table source_url:/docs/18/app-clusterdb.html summary:Cluster table only. Multiple tables can be clustered by writing multiple -t switches.], map[description:Print detailed information during processing. names:[-v --verbose] signature:-v --verbose source_url:/docs/18/app-clusterdb.html summary:Print detailed information during processing.], map[description:Print the clusterdb version and exit. names:[-V --version] signature:-V --version source_url:/docs/18/app-clusterdb.html summary:Print the clusterdb version and exit.], map[description:Show help about clusterdb command line arguments, and exit. names:[-? --help] signature:-? --help source_url:/docs/18/app-clusterdb.html summary:Show help about clusterdb command line arguments, and exit.], map[description:Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket. names:[-h host --host= host] signature:-h host --host= host source_url:/docs/18/app-clusterdb.html summary:Specifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket.], map[description:Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections. names:[-p port --port= port] signature:-p port --port= port source_url:/docs/18/app-clusterdb.html summary:Specifies the TCP port or local Unix domain socket file extension on which the server is listening for connections.], map[description:User name to connect as. names:[-U username --username= username] signature:-U username --username= username source_url:/docs/18/app-clusterdb.html summary:User name to connect as.], map[description:Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password. names:[-w --no-password] signature:-w --no-password source_url:/docs/18/app-clusterdb.html summary:Never issue a password prompt. If the server requires password authentication and a password is not available by other means such as a .pgpass file, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.], map[description:Force clusterdb to prompt for a password before connecting to a database. This option is never essential, since clusterdb will automatically prompt for a password if the server demands password authentication. However, clusterdb will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing -W to avoid the extra connection attempt. names:[-W --password] signature:-W --password source_url:/docs/18/app-clusterdb.html summary:Force clusterdb to prompt for a password before connecting to a database.], map[description:When the -a / --all is used, connect to this database to gather the list of databases to cluster. If not specified, the postgres database will be used, or if that does not exist, template1 will be used. This can be a connection string . If so, connection string parameters will override any conflicting command line options. Also, connection string parameters other than the database name itself will be re-used when connecting to other databases. names:[--maintenance-db= dbname] signature:--maintenance-db= dbname source_url:/docs/18/app-clusterdb.html summary:When the -a / --all is used, connect to this database to gather the list of databases to cluster. If not specified, the postgres database will be used, or if that does not exist, template1 will be used. This can be a connection string . If so, connection string parameters will override any conflicting command line options. Also, connection string parameters other than the database name itself will be re-used when connecting to other databases.]

来源引用

完整定义与证据 JSON

定义来源

center · PostgreSQL 18 · ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8

正文语言: en · ee8d1a3612338fd9adf250730cb640fcc5233b5491337cc00a316a44e3a0b9f8