Re: Failing to boot Postgres on Red Hat Linux
От | Thomas Good |
---|---|
Тема | Re: Failing to boot Postgres on Red Hat Linux |
Дата | |
Msg-id | Pine.LNX.3.96.1000831121601.8880A-100000@q8.nrnet.org обсуждение исходный текст |
Ответ на | Failing to boot Postgres on Red Hat Linux ("Matthew Green" <Matthewgreen@intelfax.co.uk>) |
Список | pgsql-novice |
On Thu, 31 Aug 2000, Matthew Green wrote: > Hello, > > Postmaster is not initializing when our Red Hat server is rebooting. > We have followed what is stated in the manual with a slight modification to allow TCPIP connections. > > i.e. > in the file /etc/inittab > > -----------------------------<SNIP>--------------------------------------------- > # Run Postgres in standard runlevels > > pg:2345:respawn:/bin/su - postgres -c "/usr/local/pgsql/bin/postmaster -i -D /usr/local/pgsql/data >> /usr/local/pgsql/logs/server.log2>&1 </dev/null" > -----------------------------<EOF>--------------------------------------------- > > This seems to execute since if we introduce a deliberate error we get a warning on reboot. > But with the line exactly as above we get no warnings, no server.log file is generated and the postmaster task is not visibleif we run "ps -A" as root. > Any help would be gratefully received including alternative methods of forcing Postgres to initialize on reboot. > > Many Thanks, > > Matthew Green Matthew, I use this line as printed on a slackware box except the port (5432) and the redirect at the end - on mine it is to (>) /dev/null and here you have it reversed. Is this simply a typo in your email? For RedHat: What follows is Lamar Owen's script (RedHat) for firing up PG. I simply place a call to it in rc.local so it starts on boot. (I keep my hacked copy of Lamar's file in /usr/local/bin, the original muzzled any logging output.) Note the rm -f of any stale locks. Here is the line that turns on logging... su -l postgres -c '/usr/bin/postmaster -i -D/var/lib/pgsql >> /var/lib/pgsql/postlog 2>&1 &' >/dev/null Cheers, Tom ---- Here is the script: #! /bin/sh # postgresql This is the init script for starting up the PostgreSQL # server # Version 6.5.2-0.2lo Lamar Owen # Added code to determine if PGDATA exists, whether it is current version # or not, and initdb if no PGDATA (initdb will not overwrite a database). # chkconfig: 345 85 15 # description: Starts and stops the PostgreSQL backend daemon that handles \ # all database requests. # processname: postmaster # pidfile: /var/run/postmaster.pid # # Source function library. . /etc/rc.d/init.d/functions # Get config. . /etc/sysconfig/network # Check that networking is up. # Pretty much need it for postmaster. [ ${NETWORKING} = "no" ] && exit 0 [ -f /usr/bin/postmaster ] || exit 0 # This script is slightly unusual in that the name of the daemon (postmaster) # is not the same as the name of the subsystem (postgresql) # See how we were called. case "$1" in start) echo -n "Checking postgresql installation: " # Check for the PGDATA structure if [ -f /var/lib/pgsql/PG_VERSION ] && [ -d /var/lib/pgsql/base/template1 ] then # Check version of existing PGDATA if [ `cat /var/lib/pgsql/PG_VERSION` != '6.5' ] then echo "old version. Need to Upgrade." echo "See /usr/doc/postgresql-6.5.2/README.rpm for more information." exit 1 else echo "looks good!" fi # No existing PGDATA! Initdb it. else echo "no database files found." if [ ! -d /var/lib/pgsql ] then mkdir -p /var/lib/pgsql chown postgres.postgres /var/lib/pgsql fi su -l postgres -c '/usr/bin/initdb --pglib=/usr/lib/pgsql --pgdata=/var/lib/pgsql' fi # Check for postmaster already running... pid=`pidof postmaster` if [ $pid ] then echo "Postmaster already running." else #all systems go -- remove any stale lock files rm -f /tmp/.s.PGSQL.* > /dev/null echo -n "Starting postgresql service: " su -l postgres -c '/usr/bin/postmaster -i -D/var/lib/pgsql >> /var/lib/pgsql/postlog 2>&1 &' >/dev/null sleep 1 pid=`pidof postmaster` if [ $pid ] then echo -n "postmaster [$pid]" touch /var/lock/subsys/postgresql echo $pid > /var/run/postmaster.pid echo else echo "failed." fi fi ;; stop) echo -n "Stopping postgresql service: " killproc postmaster sleep 2 rm -f /var/run/postmaster.pid rm -f /var/lock/subsys/postgresql echo ;; status) status postmaster ;; restart) $0 stop $0 start ;; *) echo "Usage: postgresql {start|stop|status|restart}" exit 1 esac exit 0 -------------------------------------------------------------------- SVCMC - Center for Behavioral Health -------------------------------------------------------------------- Thomas Good tomg@ { admin | q8 } .nrnet.org IS Coordinator / DBA Phone: 718-354-5528 Fax: 718-354-5056 -------------------------------------------------------------------- Powered by: PostgreSQL s l a c k w a r e FreeBSD: RDBMS |---------- linux The Power To Serve --------------------------------------------------------------------
В списке pgsql-novice по дате отправления:
Предыдущее
От: Charles CurleyДата:
Сообщение: Re: Seek for cygwin1.dll to run postgreSQL on WinNT workstation