"Peer-autentisering" betyder att den använder en unix-socket och förväntar sig att den anslutande unix-användaren ska ha samma unix-användarnamn som postgresql-användarnamnet.
Eftersom ditt lokala unix-användarnamn är funkdified
och du försöker ansluta som användare goodsounds
över en unix-domänsocket (local
) anslutning där din pg_hba.conf
anger peer
autentisering, Pg avvisar korrekt ditt anslutningsförsök.
Detta är standardbeteendet för många installationer när man använder unix-sockets.
Du kan:
- Anslut via TCP/IP genom att ange ett värdnamn i dina databasanslutningsinställningar;
- redigera
pg_hba.conf
för att användamd5
lösenordsautentisering istället förpeer
autentisering för unix-uttag (local
anslutningstyp) så Pg accepterar lösenordsautentisering; eller - Anslut till ett PostgreSQL-användarnamn som är samma som ditt unix-användarnamn och skapa användaren i PostgreSQL om det inte finns ännu.
Se dokumenten för pg_hba.conf
och resten av klientautentiseringskapitlet i dokumentationen.
Observera att ändringar till pg_hba.conf
träder inte i kraft omedelbart, du måste starta om eller åtminstone ladda om PostgreSQL för att få den att läsa om pg_hba.conf
.
Åh, också, om du har flera PostgreSQL-versioner installerade kan du ha en libpq från en version och en server från en annan. Se i det här fallet till att platsen för unix-socket som libpq ansluter till som standard är densamma som serverns unix_socket_directories
eller åsidosätta den med (t.ex.) host=/tmp
i din anslutningssträng.