Index Index for
Section 1
Index Alphabetical
listing for V
Bottom of page Bottom of
page

VACUUMDB(1)

NAME

vacuumdb - garbage-collect and analyze a PostgreSQL database

SYNOPSIS

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

DESCRIPTION

vacuumdb is a utility for cleaning a PostgreSQL database. vacuumdb will also generate internal statistics used by the PostgreSQL query optimizer. vacuumdb is a shell script wrapper around the backend command VACUUM [vacuum(5)] via the PostgreSQL interactive terminal psql(1). There is no effective difference between vacuuming databases via this or other methods. psql must be found by the script and a database server must be running at the targeted host. Also, any default settings and environment variables available to psql and the libpq front-end library do apply. vacuumdb might need to connect several times to the PostgreSQL server, asking for a password each time. It is convenient to have a $HOME/.pgpass file in such cases.

OPTIONS

vacuumdb accepts the following command-line arguments: [-d] dbname [--dbname] dbname Specifies the name of the database to be cleaned or analyzed. If this is not specified and -a (or --all) is not used, the database name is read from the environment variable PGDATABASE. If that is not set, the user name specified for the connection is used. -a --all Vacuum all databases. -e --echo Echo the commands that vacuumdb generates and sends to the server. -f --full Perform ``full'' vacuuming. -q --quiet Do not display a response. -t table [ (column [,...]) ] --table table [ (column [,...]) ] Clean or analyze table only. Column names may be specified only in conjunction with the --analyze option. Tip: If you specify columns to vacuum, you probably have to escape the parentheses from the shell. -v --verbose Print detailed information during processing. -z --analyze Calculate statistics for use by the optimizer. vacuumdb 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 host begins with a slash, it is used as the directory for the Unix domain socket. -p port --port port Specifies the Internet TCP/IP 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 --password Force password prompt.

DIAGNOSTICS

VACUUM Everything went well. vacuumdb: Vacuum failed. Something went wrong. vacuumdb is only a wrapper script. See VACUUM [vacuum(5)] and psql(1) for a detailed discussion of error messages and potential problems.

ENVIRONMENT

PGDATABASE PGHOST PGPORT PGUSER Default connection parameters.

EXAMPLES

To clean the database test: $ vacuumdb test To clean and analyze for the optimizer a database named bigdb: $ vacuumdb --analyze bigdb To clean a single table foo in a database named xyzzy, and analyze a single column bar of the table for the optimizer: $ vacuumdb --analyze --verbose --table 'foo(bar)' xyzzy

SEE ALSO

VACUUM [vacuum(5)]

Index Index for
Section 1
Index Alphabetical
listing for V
Top of page Top of
page