Váš pg_hba.conf
by měl skutečně vyžadovat heslo pro připojení soketu unix, ale stále existují způsoby, jak to obejít, které byste měli ověřit:
-
.pgpass
soubor v domovském adresáři postgres obsahující heslo (zkontrolujte také PGPASSFILE proměnná prostředí pro nestandardní cestu). -
PGPASSWORD lze nastavit proměnnou prostředí.
A existuje také možnost, že upravujete nesprávný soubor pg_hba.conf. Při připojení jako postgres lze správnou cestu pro ověření získat pomocí SHOW hba_file
SQL příkaz.
Můžete také zkontrolovat soubor protokolu /var/log/postgresql/postgresql-9.1-main.log
pro potvrzení, že konfigurační soubory jsou znovu načteny, když o to požádáte, a hledejte jakoukoli podezřelou zprávu během ověřování.
Pokud jde o důvod, proč jsou spojení s uživatelem postgres bez hesla běžná, debian PG-9.1 pg_hba.conf
má tento komentář o jejich nepovolení:
# DO NOT DISABLE!
# If you change this first entry you will need to make sure that the
# database superuser can access the database using some other method.
# Noninteractive access to all databases is required during automatic
# maintenance (custom daily cronjobs, replication, and similar tasks).
#
# Database administrative login by Unix domain socket
local all postgres peer
Protože Debian a Ubuntu používají stejné balíčky postgres, platí to i pro Ubuntu.