Commit eb410b6b authored by Bruce Momjian's avatar Bruce Momjian

Manual page improvements.

parent 08147fa7
......@@ -3,7 +3,7 @@
# pg_upgrade: update a database without needing a full dump/reload cycle.
# CAUTION: Read the manual page before trying to use this!
# $Header: /cvsroot/pgsql/contrib/pg_upgrade/Attic/pg_upgrade,v 1.8 2002/01/15 05:10:57 momjian Exp $
# $Header: /cvsroot/pgsql/contrib/pg_upgrade/Attic/pg_upgrade,v 1.9 2002/01/15 05:41:55 momjian Exp $
#
# To migrate this to newer versions of PostgreSQL:
# 1) Update the version numbers at the top of the file
......@@ -84,11 +84,11 @@ make_dbobjoidmap()
grep -v '^template0$' |
while read DB
do
QUERY="`echo \" SELECT relname, oid
FROM pg_class
WHERE relkind = 'r' OR
relkind = 'i' OR
relkind = 't'\"`"
QUERY="SELECT relname, oid
FROM pg_class
WHERE relkind = 'r' OR
relkind = 'i' OR
relkind = 't'"
# Don't move over 7.1 int4 sequences; use setval() file.
# Sequence XIDs changed from 7.2beta4 to beta5; don't copy them.
if [ "$SRC_VERSION" != "7.1" -a \
......
......@@ -11,29 +11,31 @@ version.
.LP
\fBpg_upgrade\fP must be run in two stages. In phase one you must run
\fBpg_upgrade\fP with your old database installation in place. In phase two,
\fBpg_upgrade\fP must be run on a freshly \fBinitdb\fP'ed current install.
In both phases, the same \fBpg_upgrade\fP script matching the newly installed
version must be used.
\fBpg_upgrade\fP must be run on a freshly \fBinitdb\fP'ed server.
In both phases, the same newly installed \fBpg_upgrade\fP script must be
used.
.SH Upgrading PostgreSQL with pg_upgrade
.LP
1) Back up your existing data directory, preferably by making a complete
dump with \fBpg_dumpall.\fP
1) Back up your existing data directory, preferably using \fBpg_dumpall.\fP
.LP
2) Copy the program \fIpgsql/contrib/pg_upgrade/pg_upgrade\fP from the current
PostgreSQL distribution somewhere into your path.
.LP
3) Change your working directory to the pgsql main directory, and type:
3) Run phase one of \fBpg_upgrade:\fP
.LP
.B $ pg_upgrade -1
.sp
to collect information about the old database needed for the upgrade.
You may use \fI-D\fP to specify the data directory, or use PGDATA.
You may use \fI-D\fP to specify the data directory. By default it uses
the environment variable \fIPGDATA.\fP
.LP
4) Do:
.LP
.B $ cd pgsql/src
.br
.B $ make install
.sp
to install the new binaries.
to install the PostgreSQL binaries for the new release.
.LP
5) Do:
.LP
......@@ -41,8 +43,8 @@ to install the new binaries.
.br
.B $ make install
.sp
to install the \fIpg_resetxlog\fP utility which is needed by
\fBpg_upgrade\fP.
to install the \fIpg_resetxlog\fP utility, which is needed during phase
2 of \fBpg_upgrade\fP.
.LP
6) Run initdb to create a new template1 database containing the system
tables for the new release. Make sure you use settings similar to those
......@@ -52,17 +54,18 @@ used in your previous version.
to the server until the upgrade is complete. You may wish to start the
postmaster without -i or alter pg_hba.conf temporarily.)
.LP
8) Change your working directory to the pgsql main directory again, and type:
8) Run phase two of \fBpg_upgrade:\fP
.LP
.B $ pg_upgrade -2
.sp
The program will do some checking to make sure everything is properly
configured, and will then recreate all the databases and tables you had,
configured, and will then recreate all your databases and tables,
but with no data. It will then physically move the data files
containing non-system tables and indexes into the proper
subdirectories.
.LP
9) Restore your old \fIpg_hba.conf\fP if needed to allow user logins.
9) Restore your old \fIpostmaster\fP flags or \fIpg_hba.conf\fP if
needed to allow user logins.
.sp
.LP
10) Carefully examine the contents of the upgraded databases. If you
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment