Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have installed PostgreSQL 9.1 on my PC (Win 7). I have a small Java application connecting successfully to it with login=sa and password="". The connection works.

However, it is refused from PgAdmin III itself. I get:

Error connecting to the server: fe_sendauth: no password supplied

How do I connect to my database from PgAdmin III with an empty password?


This is just a test, not production code.

share|improve this question

migrated from Nov 18 '11 at 16:16

This question came from our site for system and network administrators.

I don't know for sure, but it's easy to imagine that PgAdmin doesn't support that. – Peter Eisentraut Nov 9 '11 at 19:02
is your Java app on the same client as pgAdmin? – Jack Douglas Nov 19 '11 at 11:54
similar question – Jack Douglas Nov 19 '11 at 12:04
up vote 8 down vote accepted

I can connect to my postgres instance from pgAdmin III without a password for any user including superusers such as postgres.

Because you are connecting ok from another client, there is no reason you should not be able to connect from pgAdmin if they are on the same workstation - unless some firewall rule on the client itself is allowing one program but not another.

If the problem is specific to this client, you may need to change one or more of:

  • pg_hba.conf
host    sa    all         192.168.0.nnn/32     trust
  • postgresql.conf
listen_addresses = '*'
  • the firewall on your postgres server, eg iptables:
-A INPUT -s 192.168.0.nnn -m state --state NEW -j ACCEPT

But I recommend you don't do any of this. The manual says the following with good reason:

trust authentication is only suitable for TCP/IP connections if you trust every user on every machine that is allowed to connect to the server by the pg_hba.conf lines that specify trust. It is seldom reasonable to use trust for any TCP/IP connections other than those from localhost (

Instead, consider either:

  • using a password and md5 identification
  • tunnelling port 5432 over ssh
share|improve this answer

I found this answer elsewhere.

If your DB is on the local host, try leaving the host field blank in the connection as opposed to using “localhost” or “″. This tells PgAdmin to connect via the local unix socket instead of TCP.

share|improve this answer
Let's add that the original question was about a Windows system. – dezso Dec 11 '12 at 8:38
Ah this was exactly it. Leaving host blank worked. – basicdays Apr 11 '15 at 2:22
You cannot leave this field blank, it is required. – Athlan Apr 17 '15 at 13:18
It looks like leaving the host field blank works only if you have a role in pg named as your system username (on Linux). Otherwise I guess user maps are needed. – a1an Aug 31 '15 at 12:25

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.