본문 바로가기
백엔드/DB

Postgresql에서 5432 port가 열려있냐는 문제(Ubuntu 기준)

by 작은소행성 2021. 6. 30.

1. 에러

각종 서비스에서 5432 port가 열려있느냐를 묻는 에러가 발생한다.
django는 이런 식.
Is the server running on host XXX and accepting TCP/IP connections on port 5432?
어쨌든 connection이 안되면 서비스가 실행되는지, port가 열려있는지 확인해보는게 좋다.


2. 확인

1) htop 에서 postgresql이 있는지 본다. 혹은 ps -el.
2) netstat -ntl로 5432가 열려있는지 본다.
3) service postgresql status로 서비스가 active 상태인지 본다.

 


3. 해결방법

1) postgresql이 실행되어 있지 않다.

sudo service postgresql start.

2) 5432 port가 열려있지 않다.

 

/etc/posgresql/VERSION/main/pg_hba.conf  

/var/lib/pgsql/11/data/pg_hba.conf 에서


# IPv4 local connections 아래
  host    all             all             0.0.0.0/0           md5
를 추가(혹은 수정)
- 외부에서 접속하는 경우 방화벽이 막혀있는 경우가 있다. 열어도 되는 서버라면
  iptables -I INPUT 1 -p tcp --dport 5432 -j ACCEPT
  iptables -I OUTPUT 1 -p tcp --dport 5432 -j ACCEPT
AWS EC2는 EC2 콘솔에 가서 열어야 하는 것 같다.


3) 실행도 되어있고 port도 열려있다.

이전 실행에서 비정상적으로 종료된 경우가 가끔 있다.

/var/lib/postgresql/VERSION/main/postmaster.pid

 

/var/lib/pgsql/VERSION/data/postmaster.pid

를 삭제하고 다시 postgresql을 시작한다.

 

 

재시작

sudo systemctl restart postgresql-11

 



4. 기타

1) 로그 위치 : /var/log/postgresql/postgresql-VERSION-main.log

반응형