PostgreSQL 에서 접속을 관리하는 방법
PostgreSQL 은 postgresql.conf 파일과 pg_hba.conf 파일을 통해
특정 서버에서 특정 사용자에만 접속이 가능하도록 제한할 수 있습니다.
이 오류는 대부분 외부서버에서 PostgreSQL 서버로 접속하려는 경우에 발생합니다.
Connection to 192.168.56.101:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections. |
위와같은 오류가 발생하는 원인
postgresql.conf 파일의 LISTEN_ADDRESSES 파라미터
postgresql.conf 파일의 'CONNECTIONS AND AUTHENTICATION' 부분이 있습니다.
여기에 listen_addresses 의 파라미터값이 있는데, 기본값이 localhost 입니다.
즉, 로컬서버에서 접속하는 경우를 제외하고는 접속하는 IP 를 받아들이지 않겠다 라는 의미입니다.
1
2
3
4
5
6
7
8
9
10
11
|
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
#listen_addresses = 'localhost' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
port = 5432 # (change requires restart)
|
cs |
당연하겠지만 주석을 해제한 후 localhost 값을 * 로 변경해 주어야겠죠?
1
2
3
4
5
6
7
8
9
10
11
|
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
listen_addresses = '*' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
port = 5432 # (change requires restart)
|
cs |
적용이 완료되었으면, PostgreSQL 을 재구동해서 listen_addresses 값을 적용해줍니다.