pg_dumpall.sgml
来自「postgresql8.3.4源码,开源数据库」· SGML 代码 · 共 490 行 · 第 1/2 页
SGML
490 行
<!--$PostgreSQL: pgsql/doc/src/sgml/ref/pg_dumpall.sgml,v 1.69 2007/12/11 19:57:32 tgl Exp $PostgreSQL documentation--><refentry id="APP-PG-DUMPALL"> <refmeta> <refentrytitle id="APP-PG-DUMPALL-TITLE"><application>pg_dumpall</application></refentrytitle> <manvolnum>1</manvolnum> <refmiscinfo>Application</refmiscinfo> </refmeta> <refnamediv> <refname>pg_dumpall</refname> <refpurpose>extract a <productname>PostgreSQL</productname> database cluster into a script file</refpurpose> </refnamediv> <indexterm zone="app-pg-dumpall"> <primary>pg_dumpall</primary> </indexterm> <refsynopsisdiv> <cmdsynopsis> <command>pg_dumpall</command> <arg rep="repeat"><replaceable>option</replaceable></arg> </cmdsynopsis> </refsynopsisdiv> <refsect1 id="app-pg-dumpall-description"> <title>Description</title> <para> <application>pg_dumpall</application> is a utility for writing out (<quote>dumping</quote>) all <productname>PostgreSQL</> databases of a cluster into one script file. The script file contains <acronym>SQL</acronym> commands that can be used as input to <xref linkend="app-psql"> to restore the databases. It does this by calling <xref linkend="app-pgdump"> for each database in a cluster. <application>pg_dumpall</application> also dumps global objects that are common to all databases. (<application>pg_dump</application> does not save these objects.) This currently includes information about database users and groups, and access permissions that apply to databases as a whole. </para> <para> Since <application>pg_dumpall</application> 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. </para> <para> The SQL script will be written to the standard output. Shell operators should be used to redirect it into a file. </para> <para> <application>pg_dumpall</application> needs to connect several times to the <productname>PostgreSQL</productname> server (once per database). If you use password authentication it will ask for a password each time. It is convenient to have a <filename>~/.pgpass</> file in such cases. See <xref linkend="libpq-pgpass"> for more information. </para> </refsect1> <refsect1> <title>Options</title> <para> The following command-line options control the content and format of the output. <variablelist> <varlistentry> <term><option>-a</></term> <term><option>--data-only</></term> <listitem> <para> Dump only the data, not the schema (data definitions). </para> </listitem> </varlistentry> <varlistentry> <term><option>-c</option></term> <term><option>--clean</option></term> <listitem> <para> Include SQL commands to clean (drop) databases before recreating them. <command>DROP</> commands for roles and tablespaces are added as well. </para> </listitem> </varlistentry> <varlistentry> <term><option>-d</option></term> <term><option>--inserts</option></term> <listitem> <para> Dump data as <command>INSERT</command> commands (rather than <command>COPY</command>). This will make restoration very slow; it is mainly useful for making dumps that can be loaded into non-<productname>PostgreSQL</productname> databases. Note that the restore might fail altogether if you have rearranged column order. The <option>-D</option> option is safer, though even slower. </para> </listitem> </varlistentry> <varlistentry> <term><option>-D</option></term> <term><option>--column-inserts</option></term> <term><option>--attribute-inserts</option></term> <listitem> <para> Dump data as <command>INSERT</command> commands with explicit column names (<literal>INSERT INTO <replaceable>table</replaceable> (<replaceable>column</replaceable>, ...) VALUES ...</literal>). This will make restoration very slow; it is mainly useful for making dumps that can be loaded into non-<productname>PostgreSQL</productname> databases. </para> </listitem> </varlistentry> <varlistentry> <term><option>-f <replaceable class="parameter">filename</replaceable></option></term> <term><option>--file=<replaceable class="parameter">filename</replaceable></option></term> <listitem> <para> Send output to the specified file. If this is omitted, the standard output is used. </para> </listitem> </varlistentry> <varlistentry> <term><option>-g</option></term> <term><option>--globals-only</option></term> <listitem> <para> Dump only global objects (roles and tablespaces), no databases. </para> </listitem> </varlistentry> <varlistentry> <term><option>-i</></term> <term><option>--ignore-version</></term> <listitem> <para> Ignore version mismatch between <application>pg_dumpall</application> and the database server. </para> <para> <application>pg_dumpall</application> can handle databases from previous releases of <productname>PostgreSQL</>, but very old versions are not supported anymore (currently prior to 7.0). Use this option if you need to override the version check (and if <application>pg_dumpall</application> then fails, don't say you weren't warned). </para> </listitem> </varlistentry> <varlistentry> <term><option>-o</></term> <term><option>--oids</></term> <listitem> <para> Dump object identifiers (<acronym>OID</acronym>s) as part of the data for every table. Use this option if your application references the <acronym>OID</> columns in some way (e.g., in a foreign key constraint). Otherwise, this option should not be used. </para> </listitem> </varlistentry> <varlistentry> <term><option>-O</></term> <term><option>--no-owner</option></term> <listitem> <para> Do not output commands to set ownership of objects to match the original database. By default, <application>pg_dumpall</application> issues <command>ALTER OWNER</> or <command>SET SESSION AUTHORIZATION</command> 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 <option>-O</>. </para> </listitem> </varlistentry> <varlistentry> <term><option>-r</option></term> <term><option>--roles-only</option></term> <listitem> <para> Dump only roles, no databases or tablespaces. </para> </listitem> </varlistentry> <varlistentry> <term><option>-s</option></term> <term><option>--schema-only</option></term> <listitem> <para> Dump only the object definitions (schema), not data. </para> </listitem> </varlistentry> <varlistentry> <term><option>-S <replaceable class="parameter">username</replaceable></option></term> <term><option>--superuser=<replaceable class="parameter">username</replaceable></option></term> <listitem> <para> Specify the superuser user name to use when disabling triggers. This is only relevant if <option>--disable-triggers</> is used. (Usually, it's better to leave this out, and instead start the resulting script as superuser.) </para> </listitem> </varlistentry> <varlistentry> <term><option>-t</option></term> <term><option>--tablespaces-only</option></term> <listitem> <para> Dump only tablespaces, no databases or roles.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?