어느날 문득
localhost에서 postgres에 연결이 않됩니다.
아래와 같이 에러가 뜹니다.
//////////////////////////////
[postgres@pgsql]$ psql customer
Connection to database 'customer' failed.
connectDB() // connect() failed: 연결이 거부됨
Is the postmaster running at 'localhost' and accepting connections on Unix socket '5432'?
//////////////////////////////
혹시나하고 ps /ef 해보니 아래와 같이 살아있더군요..
//////////////////////////////
postgres 6446 1 7 May08 ? 01:08:04 /usr/local/pgsql/bin/postmaster /i /S /B 256 /N 128
//////////////////////////////
잼있는 사실은 외부로, 즉 웹을 통해서는 잘 들어와집니다.
또 `psql /h db.jun.co.kr customer`해도 들어와 집니다.
그래서 psql 을 kill하고 다시 가동시키니 잘되더군요..
근데 왜 local로 않들어 갈 졌을까요?
postgres의 실행 옵션에 문제가 있는지.. 원인 파악이 않되는군요...
혹시 crontab에서 다음과 같은 shell script를 1분마다 돌리는게 문제가 있나요?
////////////////////////////////////////////////
[postgres@pgsql]$ more check.sh
#!/bin/sh
set /x
NUM=`ps /ef | grep postmaster | wc /l`
echo $NUM
if [ $NUM /lt 2 ]
then
\rm /tmp/.s.*
/usr/local/pgsql/bin/postmaster /D /usr/local/pgsql/data /i /S
fi
///////////////////////////////////////////////////////////////
많은 의견 기다리겠습니다.
|