DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

vacuumdb(1)




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 ]  ]  [
     --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  wrapper  around  the  SQL  command   VACUUM
     [vacuum(5)].  There is no effective difference between vacu-
     uming 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.

Application          Last change: 2008-01-03                    1

VACUUMDB(1)      PostgreSQL Client Applications       VACUUMDB(1)

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

     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 connec-
          tions.

     -U username

     --username username
          User name to connect as

     -W

     --password

Application          Last change: 2008-01-03                    2

VACUUMDB(1)      PostgreSQL Client Applications       VACUUMDB(1)

          Force password prompt.


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(5)]  and  psql(1)
     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 vari-
     ables used by the libpq front-end library will apply.


NOTES

     vacuumdb might need to connect several times  to  the  Post-
     greSQL  server,  asking for a password each time. It is con-
     venient 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(5)]

Application          Last change: 2008-01-03                    3


Man(1) output converted with man2html