Commit d0ffbe2f authored by Thomas G. Lockhart's avatar Thomas G. Lockhart

Incorporate changes suggested by Tom Lane.

Update storage space estimates.
Continue cleanup.
Still need to consolidate configure parameters with new config.sgml info.
parent 6ae396c9
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
<Abstract> <Abstract>
<Para> <Para>
Complete installation instructions for <ProductName>Postgres</ProductName> Complete installation instructions for
v6.4. <ProductName>Postgres</ProductName> v6.4.
</Para> </Para>
</Abstract> </Abstract>
...@@ -15,7 +15,8 @@ for up to date information, patches, etc. ...@@ -15,7 +15,8 @@ for up to date information, patches, etc.
</Para> </Para>
<Para> <Para>
The installation notes below assume the following (except where noted): These installation instructions assume:
<ItemizedList Mark="bullet" Spacing="compact"> <ItemizedList Mark="bullet" Spacing="compact">
<ListItem> <ListItem>
<Para> <Para>
...@@ -29,7 +30,7 @@ Defaults are used except where noted. ...@@ -29,7 +30,7 @@ Defaults are used except where noted.
</ListItem> </ListItem>
<ListItem> <ListItem>
<Para> <Para>
User postgres is the <ProductName>Postgres</ProductName> superuser. User <literal>postgres</literal> is the <ProductName>Postgres</ProductName> superuser.
</Para> </Para>
</ListItem> </ListItem>
<ListItem> <ListItem>
...@@ -74,12 +75,39 @@ http://www.postgresql.org/docs/admin/install.htm</ulink>. ...@@ -74,12 +75,39 @@ http://www.postgresql.org/docs/admin/install.htm</ulink>.
In general, most Unix-compatible In general, most Unix-compatible
platforms with modern libraries should be able to run <ProductName>Postgres</ProductName>. platforms with modern libraries should be able to run <ProductName>Postgres</ProductName>.
<para>
Although the minimum required memory for running <ProductName>Postgres</ProductName>
is as little as 8MB, there are noticable improvements in runtimes for the regression
tests when expanding memory up to 96MB on a relatively fast dual-processor system
running X-Windows.
The rule is you can never have too much memory.
<Para> <Para>
You should have at least 8 MB of memory and at least 45 MB of disk space Check that you have sufficient disk space. You will need about
to hold the source, binaries, and user databases. After installation 30 Mbytes for <filename>/usr/src/pgsql</filename>,
you may reduce this to about 3 Mbytes plus space for user databases. about 5 Mbytes for <filename>/usr/local/pgsql</filename>
(excluding your database) and 1 Mbyte for an empty database.
The database will temporarily grow to about 20 Mbytes during the
regression tests. You will also need about 3 Mbytes for the
distribution tar file.
</Para> </Para>
<Para>
We therefore recommend that during installation and testing you
have well over 20 Mbytes free under <filename>/usr/local</filename> and another 25 Mbytes
free on the disk partition containing your database. Once you
delete the source files, tar file and regression database, you
will need 2 Mbytes for <filename>/usr/local/pgsql</filename>, 1 Mbyte for the empty
database, plus about five times the space you would require to
store your database data in a flat file.
</Para>
<Para>
To check for disk space, use
<programlisting>
$ df -k
</programlisting>
</Sect1> </Sect1>
<Sect1> <Sect1>
...@@ -123,51 +151,24 @@ Read any last minute information and platform specific porting ...@@ -123,51 +151,24 @@ Read any last minute information and platform specific porting
<Para> <Para>
Create the <ProductName>Postgres</ProductName> superuser account Create the <ProductName>Postgres</ProductName> superuser account
(<literal>postgres</literal> is commonly used) if it does not already exist. (<literal>postgres</literal> is commonly used) if it does not already exist.
</Para>
</Step>
<Step Performance="required"> <para>
<Para> The owner of the Postgres files can be any unprivileged user account.
Log in to the <ProductName>Postgres</ProductName> superuser account. It <emphasis>must not</emphasis> be <literal>root</literal>, <literal>bin</literal>,
</Para> or any other account with special access rights, as that would create a security risk.
<SubSteps>
<Step Performance="required">
<Para>
Check that you have sufficient disk space. You will need about
17 Mbytes for <filename>/usr/src/pgsql</filename>,
about 2 Mbytes for <filename>/usr/local/pgsql</filename>
(excluding your database) and 1 Mbyte for an empty database.
The database will temporarily grow to about 20 Mbytes during the
regression tests. You will also need about 3 Mbytes for the
distribution tar file.
</Para>
<Para>
We therefore recommend that during installation and testing you
have well over 20 Mbytes free under <filename>/usr/local</filename> and another 25 Mbytes
free on the disk partition containing your database. Once you
delete the source files, tar file and regression database, you
will need 2 Mbytes for <filename>/usr/local/pgsql</filename>, 1 Mbyte for the empty
database, plus about five times the space you would require to
store your database data in a flat file.
</Para>
<Para>
To check for disk space, use
<programlisting>
$ df -k
</programlisting>
</Para>
</Step> </Step>
</SubSteps>
</Step> <Step Performance="required">
<Para>
Log in to the <ProductName>Postgres</ProductName> superuser account. Most of the
remaining steps in the installation will happen in this account.
<Step Performance="required"> <Step Performance="required">
<Para> <Para>
Ftp file Ftp file
<ulink url="ftp://ftp.postgresql.org/pub/postgresql-v6.4.tar.gz"><filename>ftp://ftp.postgresql.org/pub/postgresql-v6.4.tar.gz</filename></ulink> <ulink url="ftp://ftp.postgresql.org/pub/postgresql-v6.4.tar.gz">
<filename>ftp://ftp.postgresql.org/pub/postgresql-v6.4.tar.gz</filename></ulink>
from the Internet. Store it in your home directory. from the Internet. Store it in your home directory.
</Para> </Para>
</Step> </Step>
...@@ -235,6 +236,8 @@ $ rm -rf flex-2.5.4 ...@@ -235,6 +236,8 @@ $ rm -rf flex-2.5.4
<Step Performance="required"> <Step Performance="required">
<Para> <Para>
If you are not upgrading an existing system then skip to
<xref linkend="newdirs">.
If you are upgrading an existing system then back up your database. If you are upgrading an existing system then back up your database.
For alpha- and beta-level releases, the database format is liable For alpha- and beta-level releases, the database format is liable
to change, often every few weeks, with no notice besides a quick comment to change, often every few weeks, with no notice besides a quick comment
...@@ -249,22 +252,33 @@ script from v6.0 or everything ...@@ -249,22 +252,33 @@ script from v6.0 or everything
will be owned by the <ProductName>Postgres</ProductName> super user. will be owned by the <ProductName>Postgres</ProductName> super user.
</tip> </tip>
<para>
To dump your fairly recent post-v6.0 database installation, type
<programlisting>
$ pg_dumpall -z > db.out
</programlisting>
<para> <para>
To use the latest <application>pg_dumpall</application> script on your To use the latest <application>pg_dumpall</application> script on your
existing database before upgrading <productname>Postgres</productname>, type: existing older database before upgrading <productname>Postgres</productname>,
pull the most recent version of <application>pg_dumpall</application>
from the new distribution:
<ProgramListing> <ProgramListing>
$ cd $ cd
$ gunzip -c postgresql-v6.4.tar.gz \ $ gunzip -c postgresql-v6.4.tar.gz \
| tar xvf - src/bin/pg_dump/pg_dumpall | tar xvf - src/bin/pg_dump/pg_dumpall
$ chmod a+x src/bin/pg_dump/pg_dumpall $ chmod a+x src/bin/pg_dump/pg_dumpall
$ src/bin/pg_dump/pg_dumpall > db.out $ src/bin/pg_dump/pg_dumpall -z > db.out
$ rm -rf src $ rm -rf src
</ProgramListing> </ProgramListing>
</Para> </Para>
<Para> <Para>
If you wish to preserve object id's (oids), then use the -o If you wish to preserve object id's (oids), then use the -o
option when running <application>pg_dumpall</application>. However, unless you have a option when running <application>pg_dumpall</application>.
However, unless you have a
special reason for doing this (such as using OIDs as keys special reason for doing this (such as using OIDs as keys
in tables), don't do it. in tables), don't do it.
</Para> </Para>
...@@ -356,7 +370,7 @@ $ exit ...@@ -356,7 +370,7 @@ $ exit
</Para> </Para>
</Step> </Step>
<Step Performance="required"> <Step Performance="required" id="newdirs">
<Para> <Para>
Make new source and install directories. The actual paths can be Make new source and install directories. The actual paths can be
different for your installation but you must be consistant throughout this procedure. different for your installation but you must be consistant throughout this procedure.
...@@ -418,8 +432,8 @@ $ ./configure [ <replaceable>options as described below</replaceable> ] ...@@ -418,8 +432,8 @@ $ ./configure [ <replaceable>options as described below</replaceable> ]
<para> <para>
If your system is not automatically recognized by configure and you have to do this, please If your system is not automatically recognized by configure and you have to do this, please
send email to send email to
<ulink url="mailto:scrappy@hub.org">scrappy@hub.org</ulink> showing both the output of the program <ulink url="mailto:scrappy@hub.org">scrappy@hub.org</ulink> with the output of the program
<application>./config.guess</application> and also what the template file should be.) <application>./config.guess</application>. Indicate what the template file should be.
</note> </note>
</Para> </Para>
...@@ -474,8 +488,8 @@ If your system is not automatically recognized by configure and you have to do t ...@@ -474,8 +488,8 @@ If your system is not automatically recognized by configure and you have to do t
</Para> </Para>
<Para> <Para>
As an example, here is the configure script used on a Sparc As an example, here is the configure script used on a Sparc Solaris 2.5 system
Solaris 2.5 system with <filename>/opt/postgres</filename> being the install base. with <filename>/opt/postgres</filename> being the installation base directory:
<ProgramListing> <ProgramListing>
$ ./configure --prefix=/opt/postgres \ $ ./configure --prefix=/opt/postgres \
...@@ -501,6 +515,15 @@ $ gmake install ...@@ -501,6 +515,15 @@ $ gmake install
The documentation is also available in Postscript format. Look for files The documentation is also available in Postscript format. Look for files
ending with <filename>.ps.gz</filename> in the same directory. ending with <filename>.ps.gz</filename> in the same directory.
<Step Performance="optional">
<Para>
Install the man page documentation. Type
<ProgramListing>
$ cd /usr/src/pgsql/doc
$ gmake man
</ProgramListing>
<Step Performance="required"> <Step Performance="required">
<Para> <Para>
Compile the program. Type Compile the program. Type
...@@ -576,8 +599,8 @@ At this point, or earlier if you wish, ...@@ -576,8 +599,8 @@ At this point, or earlier if you wish,
<Step Performance="required"> <Step Performance="required">
<Para> <Para>
14) If necessary, tell your system how to find the new shared libraries. You can If necessary, tell your system how to find the new shared libraries. You can
do <emphasis>one</emphasis> of the following, preferably the first: do <emphasis>one</emphasis> of the following, preferably the first:
<SubSteps> <SubSteps>
<Step Performance="optional"> <Step Performance="optional">
...@@ -626,10 +649,19 @@ pg_id: can't load library 'libpq.so' ...@@ -626,10 +649,19 @@ pg_id: can't load library 'libpq.so'
<Step Performance="required"> <Step Performance="required">
<Para> <Para>
If it has not already been done, then prepare account <literal>postgres</literal> If it has not already been done, then prepare account <literal>postgres</literal>
for using <ProductName>Postgres</ProductName>. for using <ProductName>Postgres</ProductName>.
Any account that will use <ProductName>Postgres</ProductName> must Any account that will use <ProductName>Postgres</ProductName> must
be similarily prepared. (The following instructions are for a be similarly prepared.
bash shell. Adapt accordingly for other shells.)
<note>
<para>
There are several ways to influence the runtime environment of the <ProductName>Postgres</ProductName>
server. Refer to the chapter on <citetitle>Administrator's Guide</citetitle> for more information.
<para>
The following instructions are for a
bash/sh shell. Adapt accordingly for other shells.
</note>
</Para> </Para>
<Para> <Para>
...@@ -677,16 +709,6 @@ $ initdb ...@@ -677,16 +709,6 @@ $ initdb
</Para> </Para>
</Step> </Step>
<Step Performance="required">
<Para>
Run the regression tests.
The file <filename>/usr/src/pgsql/src/test/regress/README</filename> has detailed
instructions for running and interpreting the regression tests.
A short version follows here:
</Para>
<substeps>
<Step Performance="required"> <Step Performance="required">
<Para> <Para>
Run postmaster from your <ProductName>Postgres</ProductName> superuser account (typically Run postmaster from your <ProductName>Postgres</ProductName> superuser account (typically
...@@ -700,6 +722,16 @@ $ nohup postmaster > regress.log 2>&1 & ...@@ -700,6 +722,16 @@ $ nohup postmaster > regress.log 2>&1 &
</Para> </Para>
</Step> </Step>
<Step Performance="required">
<Para>
Run the regression tests.
The file <filename>/usr/src/pgsql/src/test/regress/README</filename> has detailed
instructions for running and interpreting the regression tests.
A short version follows here:
</Para>
<substeps>
<Step Performance="required"> <Step Performance="required">
<Para> <Para>
Type Type
......
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