Postgresql localhost kapcsolódás hibás

Fórumok

Debian szerveren szeretnék PHP-ból postgresql adatbázishoz kapcsolódni 'localhost'-ról.
127.0.0.1 és ::1 címekről tudok kapcsolódni, de localhost-ról nem.
A /etc/hosts fájlban van


127.0.0.1       localhost
::1     localhost ip6-localhost ip6-loopback

A /etc/postgresql/9.6/main/postgresql.conf fájlban van


listen_addresses = 'localhost'

A /etc/postgresql/9.6/main/pg_hba.conf fájlban pedig van


host    all             all             127.0.0.1/32            md5

A leírások alapján ennyinek elégnek kellene lennie, hogy localhost alól is tudjak csatlakozni, de mégsem. Valamit kihagytam? Mi kellhet még?

Hozzászólások

A pg_hba.conf fájlban a local sort kell keresned.
A localhost socketen próbál csatlakozni. Az pedig gondolom alapértelmezett állapotban nem md5 auth-method.

ebben latod?

netstat -apnt | grep 5432

gondolom default porton listenel.
psql -el sikerul kapcsolodni hozzá?:

psql -h 127.0.0.1 -U usernev dbnev
psql -h localhost -U usernev dbnev

egyébként md5 oks, ha php-ból akarsz, de akkor nem unix-socket ha localhost, hanem hostname és port beallítás kell hozzá.

Köszönöm a válaszokat, kiderült, hogy a probléma nem a postgresql-ben, hanem a php-fpm chroot beállításában van. Chroot nélkül rendben elérhető a postgresql php alól is. Chroot alatt akkor sem, ha a /var/run/postgresql mappa be van mountolva. Hibaüzenetet semelyik logban nem találok.
Tudja valaki, mi kell még, hogy a postgresql tudja használni a socket kapcsolatokat is php-fpm chroot alatt?

Én csak annyit szeretnék, hogy az új környezetben a php kódok módosítás nélkül futhassanak.
Jelenleg 8.4-es postgresql elérhető a pg_connect paranccsal úgy, hogy "localhost" a host paraméter értéke.
Az új chroot környezetben ez a pg_connect már nem tud csatlakozni.
Bármilyen beállítással elégedett lennék, ha a pg_connect "localhost" hosttal képes lenne csatlakozni.
Mivel a postgresql pg_hba.conf fájlja alapból unix socket-re irányítja a "localhost" kapcsolatokat, ezért küzdök a socket elérésével. De ha be tudnám állítani a postgresqlnek, hogy az ilyen csatlakozásokat is TCP-vel kezelje, mint a 127.0.0.1 hosttal indítottakat, akkor azzal is elégedett lennék.

Megszületett a megoldás, amit leírok, hátha valaki hasonló problémába ütközik. A postgresql a localhost kapcsolódáshoz olvassa a /etc/hosts fájlt, a mysql nem. Vagyis a chroot-ba elérhetővé kell tenni a /etc/hosts fájlt is amiben szerepelt a loclahost feloldása, ha postgresql "localhost" kapcsolódást is akarok chroot-olt php-fpm alól.