Hello!
Our check procedure on TRU64 UNIX is:
checkmasterdaemon if [ $? -eq 1 ]; then # Try to connect to postgres by selecting tables
TABELLEN=`/pg/postgresql-7.4.3/bin/psql-h postgres -c 'select datname from pg_database' postgres postgres 2>/dev/null`
if [[ "X$TABELLEN" = "X" ]];then echo "check failed for postmaster" exit 1 else #
echo"postmaster is running" fi else echo "check failed for postmaster" exit 1 fi
where :
checkmasterdaemon () { MASTER_PID=$(getmasterpid)
if [ "X$MASTER_PID" = "X" ]; then #echo "Postmaster is not running" ret=0 else PS_OUT=`ps -o
comm,pid-p "${MASTER_PID}"` PID=`echo $PS_OUT | awk '/postgres/ {print $4}'` #echo $PID if [
"X$MASTER_PID"!= "X$PID" ] then #echo "Postmaster (${MASTER_PID}) does not exist (any more)"
ret=0 else ret=1 fi fi return $ret
}
getmasterpid () { if [[ -r ${PIDFILE} ]] then MASTER_PID=`head -n 1 ${PIDFILE}` echo $MASTER_PID else
echo "" fi
}
--
Mit freundlichen Gruessen / With best regards Reiner Dassing