Yolinux.com

pg_dumpall manpage

Search topic Section
Get manual page for the search topic
List all commands matching the search topic
List all topics in the manpage index

PG_DUMPALL(1)		PostgreSQL Client Applications		 PG_DUMPALL(1)



NAME
       pg_dumpall - extract a PostgreSQL database cluster into a script file


SYNOPSIS
       pg_dumpall [ option... ]

DESCRIPTION
       pg_dumpall  is  a  utility for writing out (''dumping'') all PostgreSQL
       databases of a cluster into one script file. The script	file  contains
       SQL  commands  that  can	 be  used  as  input to psql(1) to restore the
       databases. It does this by calling pg_dump(1) for each  database	 in  a
       cluster.	  pg_dumpall  also dumps global objects that are common to all
       databases.  (pg_dump does not  save  these  objects.)   This  currently
       includes	 information  about database users and groups, and access per-
       missions that apply to databases as a whole.

       Since pg_dumpall reads tables from all databases you will  most	likely
       have  to connect as a database superuser in order to produce a complete
       dump. Also you will need superuser  privileges  to  execute  the	 saved
       script  in  order  to be allowed to add users and groups, and to create
       databases.

       The SQL script will be written to the standard output. Shell  operators
       should be used to redirect it into a file.

       pg_dumpall  needs  to  connect  several	times to the PostgreSQL server
       (once per database). If you use password authentication it is likely to
       ask for a password each time. It is convenient to have a ~/.pgpass file
       in such cases. See the documentation for more information.

OPTIONS
       The following command-line options control the content  and  format  of
       the output.

       -a

       --data-only
	      Dump only the data, not the schema (data definitions).

       -c

       --clean
	      Include SQL commands to clean (drop) databases before recreating
	      them. DROP commands for roles and tablespaces are added as well.

       -d

       --inserts
	      Dump  data as INSERT commands (rather than COPY). This will make
	      restoration very slow; it is mainly useful for making dumps that
	      can  be  loaded  into  non-PostgreSQL  databases.	 Note that the
	      restore may fail altogether if you have rearranged column order.
	      The -D option is safer, though even slower.

       -D

       --column-inserts

       --attribute-inserts
	      Dump  data as INSERT commands with explicit column names (INSERT
	      INTO table (column, ...) VALUES ...). This will make restoration
	      very  slow;  it  is  mainly  useful for making dumps that can be
	      loaded into non-PostgreSQL databases.

       -g

       --globals-only
	      Dump only global objects (roles and tablespaces), no  databases.

       -i

       --ignore-version
	      Ignore  version  mismatch	 between  pg_dumpall  and the database
	      server.

	      pg_dumpall can handle databases from previous releases of	 Post-
	      greSQL,  but  very  old versions are not supported anymore (cur-
	      rently prior to 7.0). Use this option if you  need  to  override
	      the  version  check (and if pg_dumpall then fails, don't say you
	      weren't warned).

       -o

       --oids Dump object identifiers (OIDs) as part of the data for every ta-
	      ble.  Use	 this  option  if  your application references the OID
	      columns in some way (e.g., in a foreign key constraint).	Other-
	      wise, this option should not be used.

       -O

       --no-owner
	      Do  not output commands to set ownership of objects to match the
	      original database.  By default, pg_dumpall issues ALTER OWNER or
	      SET SESSION AUTHORIZATION statements to set ownership of created
	      schema elements.	These statements will fail when the script  is
	      run  unless  it is started by a superuser (or the same user that
	      owns all of the objects in the script).  To make a  script  that
	      can  be  restored by any user, but will give that user ownership
	      of all the objects, specify -O.

       -s

       --schema-only
	      Dump only the object definitions (schema), not data.

       -S username

       --superuser=username
	      Specify the superuser user name to use when disabling  triggers.
	      This  is only relevant if --disable-triggers is used.  (Usually,
	      it's better to leave this out, and instead start	the  resulting
	      script as superuser.)

       -v

       --verbose
	      Specifies	 verbose  mode.	 This  will cause pg_dumpall to output
	      start/stop times to the dump  file,  and	progress  messages  to
	      standard	error.	It will also enable verbose output in pg_dump.

       -x

       --no-privileges

       --no-acl
	      Prevent dumping of access privileges (grant/revoke commands).

       -X disable-dollar-quoting

       --disable-dollar-quoting
	      This option disables the use of dollar quoting for function bod-
	      ies, and forces them to be quoted using SQL standard string syn-
	      tax.

       -X disable-triggers

       --disable-triggers
	      This option is only relevant when creating a data-only dump.  It
	      instructs	 pg_dumpall to include commands to temporarily disable
	      triggers on the target tables while the data  is	reloaded.  Use
	      this  if you have referential integrity checks or other triggers
	      on the tables that you do not want to invoke during data reload.

	      Presently,  the  commands emitted for --disable-triggers must be
	      done as superuser. So, you should also specify a superuser  name
	      with  -S, or preferably be careful to start the resulting script
	      as a superuser.

       -X use-set-session-authorization

       --use-set-session-authorization
	      Output SQL-standard SET SESSION AUTHORIZATION  commands  instead
	      of  ALTER	 OWNER	commands  to  determine object ownership. This
	      makes the dump more standards compatible, but depending  on  the
	      history of the objects in the dump, may not restore properly.


       The  following  command-line  options  control  the database connection
       parameters.

       -h host
	      Specifies the host name of the machine  on  which	 the  database
	      server  is running. If the value begins with a slash, it is used
	      as the directory for the Unix  domain  socket.  The  default  is
	      taken  from the PGHOST environment variable, if set, else a Unix
	      domain socket connection is attempted.

       -p port
	      Specifies the TCP port or local Unix domain socket  file	exten-
	      sion on which the server is listening for connections.  Defaults
	      to the PGPORT environment variable, if  set,  or	a  compiled-in
	      default.

       -U username
	      Connect as the given user.

       -W     Force a password prompt. This should happen automatically if the
	      server requires password authentication.


ENVIRONMENT
       PGHOST

       PGPORT

       PGUSER Default connection parameters

NOTES
       Since pg_dumpall calls pg_dump  internally,  some  diagnostic  messages
       will refer to pg_dump.

       Once  restored, it is wise to run ANALYZE on each database so the opti-
       mizer has useful statistics. You can also run vacuumdb -a -z to analyze
       all databases.

       pg_dumpall  requires  all needed tablespace directories to exist before
       the restore or database creation will fail for databases in non-default
       locations.

EXAMPLES
       To dump all databases:

       $ pg_dumpall > db.out


       To reload this database use, for example:

       $ psql -f db.out postgres

       (It  is	not  important	to  which  database you connect here since the
       script file created by pg_dumpall will contain the appropriate commands
       to create and connect to the saved databases.)

SEE ALSO
       pg_dump(1).  Check there for details on possible error conditions. Also
       see supported environment variables (the documentation).



Application			  2010-12-14			 PG_DUMPALL(1)
YoLinux.com Home Page
YoLinux Tutorial Index
Privacy Policy | Advertise with us | Feedback Form |
Unauthorized copying or redistribution prohibited.
    Bookmark and Share