问题:
I am trying to connect to a postgres database installed in a remote server using the following command:
psql -h host_ip -U db_username -d db_name
This the error that occurs:
psql: could not connect to server: Connection refused Is the server running on host "" and accepting TCP/IP connections on port 5432?
- Postgres installed version is 9.4.
- Host operating system : Ubuntu 15.04
- Client operating system : Centos 7
I already tried the following but the issue remains unresolved:
- Edited
pg_hba.conf file to include
host all all 0.0.0.0/0 md5
- Edited 'postgresql.conf' and changed the listen parameter to
listen_addresses='*'
- Restarted postgres service.
- Disabled firewall and iptables on host and client.
- I checked by running the psql command locally and it worked.
- I tried the second solution given in this question. Running
nmap gave me the following output:
Starting Nmap 6.47 ( http://nmap.org ) at 2015-09-07 18:08 IST Nmap scan report for 10.17.250.250 Host is up (0.0000040s latency). Not shown: 997 closed ports PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 80/tcp open http
Am I missing something. Hope someone can help.
|
|
|
|
|
|
|
Can you try a 'netstat -na|grep 5432' and see if postgresql binds to all interfaces? – kometen Dec 15 '15 at
|
|
----------------------------------------------------------------------------
cd /etc/postgresql/9.x/main/
open file named postgresql.conf
sudo vi postgresql.conf
add this line to that file
listen_addresses = '*'
then open file named pg_hba.conf
sudo vi pg_hba.conf
and add this line to that file
host all all 0.0.0.0/0 md5
It allows access to all databases for all users with an encrypted password
restart your server
sudo /etc/init.d/postgresql restart