Jeśli masz pg_hba.conf
ustaw wymaganie md5
uwierzytelnianie, a użytkownik nie ma hasła, wówczas uwierzytelnianie nie może nastąpić.
ALTER USER the_user_name PASSWORD 'give_it_a_password';
Alternatywnie użyj ident
lub (tylko dla hosta lokalnego, niebezpieczne) trust
uwierzytelnianie dla tej kombinacji użytkownik/db w pg_hba.conf
jeśli naprawdę nie musisz mieć hasła. Zwykle jest to zły pomysł, znacznie lepiej jest po prostu ustawić hasło.
Demo:
$ psql -q -U postgres postgres
postgres=# CREATE USER nopw;
CREATE ROLE
$ psql -h localhost -U nopw postgres
Password for user nopw: [pressed enter]
psql: fe_sendauth: no password supplied
$ psql -q -U postgres postgres
postgres=# ALTER USER nopw PASSWORD 'test';
postgres=# \q
$ psql -q -h localhost -U nopw postgres
Password for user nopw: [entered 'test' then pressed enter]
postgres=>