aboutsummaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/ref/pg_dump.sgml17
-rw-r--r--doc/src/sgml/ref/pg_restore.sgml18
2 files changed, 30 insertions, 5 deletions
diff --git a/doc/src/sgml/ref/pg_dump.sgml b/doc/src/sgml/ref/pg_dump.sgml
index 9aadae36e03..0169043e96a 100644
--- a/doc/src/sgml/ref/pg_dump.sgml
+++ b/doc/src/sgml/ref/pg_dump.sgml
@@ -1,5 +1,5 @@
<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/ref/pg_dump.sgml,v 1.41 2001/12/08 03:24:37 thomas Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/pg_dump.sgml,v 1.42 2002/02/11 00:14:10 tgl Exp $
PostgreSQL documentation
-->
@@ -603,8 +603,21 @@ connectDBStart() -- connect() failed: No such file or directory
<refsect1 id="pg-dump-notes">
<title>Notes</title>
+
+ <para>
+ If your installation has any local additions to the template1 database,
+ be careful to restore the output of <command>pg_dump</command> into a
+ truly empty database; otherwise you are likely to get errors due to
+ duplicate definitions of the added objects. To make an empty database
+ without any local additions, copy from template0 not template1,
+ for example:
+<programlisting>
+CREATE DATABASE foo WITH TEMPLATE = template0;
+</programlisting>
+ </para>
+
<para>
- <command>pg_dump</command> has a few limitations.
+ <command>pg_dump</command> has a few limitations:
<itemizedlist>
<listitem>
diff --git a/doc/src/sgml/ref/pg_restore.sgml b/doc/src/sgml/ref/pg_restore.sgml
index ef0587c11f9..b88bb4ae748 100644
--- a/doc/src/sgml/ref/pg_restore.sgml
+++ b/doc/src/sgml/ref/pg_restore.sgml
@@ -1,4 +1,4 @@
-<!-- $Header: /cvsroot/pgsql/doc/src/sgml/ref/pg_restore.sgml,v 1.21 2001/11/28 20:49:10 petere Exp $ -->
+<!-- $Header: /cvsroot/pgsql/doc/src/sgml/ref/pg_restore.sgml,v 1.22 2002/02/11 00:14:10 tgl Exp $ -->
<refentry id="APP-PGRESTORE">
<docinfo>
@@ -514,12 +514,24 @@ connectDBStart() -- connect() failed: No such file or directory
</title>
<para>
+ If your installation has any local additions to the template1 database,
+ be careful to load the output of <command>pg_restore</command> into a
+ truly empty database; otherwise you are likely to get errors due to
+ duplicate definitions of the added objects. To make an empty database
+ without any local additions, copy from template0 not template1,
+ for example:
+<programlisting>
+CREATE DATABASE foo WITH TEMPLATE = template0;
+</programlisting>
+ </para>
+
+ <para>
The limitations of <command>pg_restore</command> are detailed below.
<itemizedlist>
<listitem>
<para>
- When restoring data to a table, <command>pg_restore</command> emits queries
+ When restoring data to a pre-existing table, <command>pg_restore</command> emits queries
to disable triggers on user tables before inserting the data then emits queries to
re-enable them after the data has been inserted. If the restore is stopped in the
middle, the system catalogs may be left in the wrong state.
@@ -538,7 +550,7 @@ connectDBStart() -- connect() failed: No such file or directory
<para>
See the <xref linkend="app-pgdump"> documentation for details on
- limitation of <command>pg_dump</command>.
+ limitations of <command>pg_dump</command>.
</para>
</refsect1>