snippetsqlMajor
How to connect to an remote PostgreSQL database on Ubuntu using pgAdmin3?
Viewed 0 times
postgresqlconnectpgadmin3ubuntudatabaseusinghowremote
Problem
I'm trying to setup a PostgreSQL database on an Ubuntu machine. I would like to be able to access it using pgAdmin3 from a remote machine. How do I setup this?
I have installed the PostgreSQL database on Ubuntu using:
In my
so it should accept connections from all IPv4-addresses and passwords should be sent in clear text (this is for development reasons).
If I run this command to see what services is running:
I can see these lines, that is showing that PostgreSQL is accepting connections on the default port:
When I try to connect to this PostgreSQL server from a remote computer on the same local network I get this error message:
Server doesn't listen
The server doesn't accept connections: the connection library reports
could not connect to server: Connection refused Is the server running on host "10.0.1.7" and accepting TCP/IP connections on port 5432?
I used
How can I connect to a PostgreSQL database running on Ubuntu from a remote machine using pgAdmin3?
I have installed the PostgreSQL database on Ubuntu using:
sudo apt-get install postgresqlIn my
/etc/postgresql/9.1/main/pg_hba.conf have I this line:host all all all passwordso it should accept connections from all IPv4-addresses and passwords should be sent in clear text (this is for development reasons).
If I run this command to see what services is running:
sudo netstat -tulpnI can see these lines, that is showing that PostgreSQL is accepting connections on the default port:
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN
3561/postgresWhen I try to connect to this PostgreSQL server from a remote computer on the same local network I get this error message:
Server doesn't listen
The server doesn't accept connections: the connection library reports
could not connect to server: Connection refused Is the server running on host "10.0.1.7" and accepting TCP/IP connections on port 5432?
I used
postgres as username and no password. But I have also tried with postgres as password. On the local server I can login using:sudo -u postgres psql postgresHow can I connect to a PostgreSQL database running on Ubuntu from a remote machine using pgAdmin3?
Solution
The line in your netstat report shows that the database is only listening on localhost:5432 (127.0.0.1) for incoming tcp connections.
So it can only accept local tcp connections regardless of what permissions you've specified in pg_hba.conf. pg_hba.conf only specifies allowed connections, but does not specify what interfaces your service will listen to.
The addresses the server listens on is specified with the listen_addresses GUC in postgresql.conf. If you want the server to listen for remote connections you should specify the ip(s) you want it to listen on or
To have your postgresql server listen on all interfaces on the host, you should have the following line in postgresql.conf:
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 3561/postgresSo it can only accept local tcp connections regardless of what permissions you've specified in pg_hba.conf. pg_hba.conf only specifies allowed connections, but does not specify what interfaces your service will listen to.
The addresses the server listens on is specified with the listen_addresses GUC in postgresql.conf. If you want the server to listen for remote connections you should specify the ip(s) you want it to listen on or
* to listen on all available interfaces on the host.To have your postgresql server listen on all interfaces on the host, you should have the following line in postgresql.conf:
listen_addresses = '*'Code Snippets
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 3561/postgreslisten_addresses = '*'Context
StackExchange Database Administrators Q#18717, answer score: 25
Revisions (0)
No revisions yet.