Skip site navigation (1) Skip section navigation (2)

Successful installation of PostgreSQL

From: "Albert REINER" <areiner(at)tph(dot)tuwien(dot)ac(dot)at>
To: pgsql-ports(at)postgreSQL(dot)org
Subject: Successful installation of PostgreSQL
Date: 1999-07-29 21:37:00
Message-ID: 19990729233700.A6204@frithjof (view raw, whole thread or download thread mbox)
Lists: pgsql-ports
I just succeeded in installing PostgreSQL according to the
installation instructions. Therein I find:

>	28.     The Postgres team wants to keep Postgres
>	  working on all of the supported platforms. We
>	  therefore ask you to let us know if you did or did
>	  not get Postgres to work on you system. Please
>	  send a mail message to pgsql-ports(at)postgresql(dot)org
>	  (mailto:pgsql-ports(at)postgresql(dot)org) telling us the
>	  following:
>	  o  The version of Postgres (v6.5.1, 6.5, beta
>	    990318, etc.).


>	  o  Your operating system (i.e. RedHat v5.2 Linux
>	    v2.0.36).

Linux (SuSE 5.3), Kernel 2.0.35

>	  o  Your hardware (SPARC, i486, etc.).

PC, AMD-K6 (233 MHz)

>	  o  Did you compile, install and run the regression
>	    tests cleanly? If not, what source code did you

Yes, including bigtest (approx. 115 minutes).

>	    change (i.e. patches you applied, changes you
>	    made, etc.), what tests failed, etc. It is normal

failed: int2 and int4, due to different error message format.

I used configure with option "--with-mb=LATIN3", and the regression
tests complained about some missing files (latin3.sql or similar).

>	    to get many warning when you compile. You do not
>	    need to report these.


Some comments on the INSTALL file:

>	7. If you are upgrading an existing system then kill
>	  the postmaster. Type
>	  $ ps -ax | grep postmaster

If it is installed, you can get the PID more easily and reliably via
pidof; on my system, using bash, it's simply

$ kill `/sbin/pidof postmaster`


$ kill $(/sbin/pidof postmaster)

>	14.     Install the program. Type
>	  $ cd /usr/src/pgsql/src
>	  $ gmake install >& make.install.log &
>	  $ tail -f make.install.log
>	   The last line displayed will be
>	  gmake[1]: Leaving directory
>	  `/usr/src/pgsql/src/man'

This did not happen for me. Anyway, there is a "cat ../register.txt"
at the end of the makefile, and /usr/src/pgsql/src/man is probably
already taken care of in step 12 ("Install the man and HTML

>	17.     If it has not already been done, then prepare
>	  account postgres for using Postgres. Any account
>	       variables) by putting these additional lines
>	       to your login environment before starting
>	       postmaster:
>		       LC_COLLATE=C
>		       LC_CTYPE=C
>		       LC_COLLATE=C

IMHO there's really no point setting LC_COLLATE twice.

>	21.     Run postmaster in the background from your
>	  Postgres superuser account (typically account
>	  postgres). Do not run postmaster from the root
>	  account!
>	  Usually, you will want to modify your computer so
>	  that it will automatically start postmaster
>	  whenever it boots. It is not required; the

The solution for Linux in the contrib-directory would not work for my
system (SuSE 5.3, but probably also the more current SuSEs); my simple
solution (from my installation of version 6.3.2) is as follows:

/etc/rc.d/init.d/functions -------------------------------------
# postgres.init Start postgres back end system.
# Author:       Thomas Lockhart <lockhart(at)alumni(dot)caltech(dot)edu>
#               modified from other startup files in the RedHat Linux distribution
# ------- modified Albert Reiner, 19990425:
PGACCOUNT="postgres"    # the postgres account (you called it something else?)
POSTMASTER="postmaster"	# this probably won't change


#PGOPTS="-i -B 256"	# -i to enable TCP/IP rather than Unix socket
#PGOPTS="-B 256"        # Do we really need 256 buffers? a.r.

# See how we were called.
case "$1" in
	if [ -f ${PGLOGFILE} ]
	echo -n "Starting postgres: "
# force full login to get path names
	su --login --command="$POSTMASTER $PGOPTS >& $PGLOGFILE &" \
                   $PGACCOUNT > /dev/null &
	sleep 5
	pid=`/sbin/pidof ${POSTMASTER}`
	echo -n "${POSTMASTER} [$pid]"
	echo -n "Stopping postgres: "
	pid=`/sbin/pidof ${POSTMASTER}`
	if [ "$pid" != "" ] ; then
		echo -n "${POSTMASTER} [$pid]"
		kill -TERM $pid
		sleep 1
	echo "Usage: $0 {start|stop}"
	exit 1

exit 0

This does not rely on /etc/rc.d/init.d/functions (non-existent on SuSE
5.3) or some environment variables set by Red Hat. To use this script
one has to:

*) login as root

*) copy the script (possibly after editing to suit one's needs)
   to /sbin/init.d/postgres

*) # cd rc2.d

*) # ln -s ../postgres K10postgres

*) # ln -s ../postgres S85postgres

*) # cd /sbin/init.d/rc3.d

*) # ln -s ../postgres K10postgres

*) # ln -s ../postgres S85postgres

The numbers in the links' names (I used 85 for Starting and 10 for
Killing) can be chosen differently, but we don't want the postmaster
to run without a network enabled; hence the S..postgres-links should
have a rather high number (so that it is started late; less than the
number of zzreached), and the K..postgres-links should have a
relatively small number (so that postmaster is killed early during

>	26.     Clean up after yourself. Type
>	  $ rm -rf /usr/src/pgsql_6_5
>	  $ rm -rf /usr/local/pgsql_6_5

/usr/src (and/or /usr/local) may be owned by root, so one may have to
su first.

I hope that some of the above remarks are of interest to you.

Albert Reiner.


  Post an / Mail to / Skribu al: Albert Reiner <areiner(at)tph(dot)tuwien(dot)ac(dot)at>

pgsql-ports by date

Next:From: Tom LaneDate: 1999-07-29 22:02:29
Subject: Re: [PORTS] HP-UX port
Previous:From: Renato BattistinDate: 1999-07-29 21:04:11
Subject: none

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group