Man Pages

vacuumdb(1) - phpMan vacuumdb(1) - phpMan

Command: man perldoc info search(apropos)  


VACUUMDB(1)             PostgreSQL Client Applications             VACUUMDB(1)



NAME
       vacuumdb - garbage-collect and analyze a PostgreSQL database


SYNOPSIS
       vacuumdb  [  connection-option... ]  [  [ --full ]  [ -f ]  ]  [  [ --verbose ]  [ -v ]  ]  [  [ --analyze ]  [
       -z ]  ]  [  [ --freeze ]  [ -F ]  ]  [ --table | -t table
        [ ( column [,...] ) ]
        ]  [ dbname ]

       vacuumdb [ connection-options... ]  [  [ --all ]  [ -a ]  ]  [  [ --full ]  [ -f ]  ]  [  [ --verbose ]  [ -v ]
       ]  [  [ --analyze ]  [ -z ]  ]  [  [ --freeze ]  [ -F ]  ]

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 wrapper around the SQL command VACUUM [vacuum(7)].  There is no effective difference between vac-
       uuming databases via this utility and via other methods for accessing the server.

OPTIONS
       vacuumdb accepts the following command-line arguments:

       -a

       --all  Vacuum all databases.

       [-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.

       -e

       --echo Echo the commands that vacuumdb generates and sends to the server.

       -f

       --full Perform ''full'' vacuuming.

       -q

       --quiet
              Do not display progress messages.

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

       --table table [ (column [,...]) ]
              Clean  or  analyze  table  only.   Column  names can be specified only in conjunction with the --analyze
              option.

              Tip: If you specify columns, you probably have to escape the parentheses from the shell.  (See  examples
              below.)


       -v

       --verbose
              Print detailed information during processing.

       -z

       --analyze
              Calculate statistics for use by the optimizer.

       -F

       --freeze
              Aggressively ''freeze'' tuples.


       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 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 vacuumdb to prompt for a password before connecting to a database.

              This  option  is  never essential, since vacuumdb will automatically prompt for a password if the server
              demands password authentication.  However, vacuumdb 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.


ENVIRONMENT
       PGDATABASE

       PGHOST

       PGPORT

       PGUSER Default connection parameters

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


DIAGNOSTICS
       In case of difficulty, see VACUUM [vacuum(7)] and psql(1) for discussions of potential problems and error  mes-
       sages.   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.

NOTES
       vacuumdb might need to connect several times to the PostgreSQL server, asking for a password each time.  It  is
       convenient to have a ~/.pgpass file in such cases. See in the documentation for more information.

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(7)]



Application                       2014-02-17                       VACUUMDB(1)