it-swarm-eu.dev

PgAdmin III - Jak se připojit k databázi, když je heslo prázdné?

Nainstaloval jsem PostgreSQL 9.1 do svého počítače (Win 7). Mám malou aplikaci Java aplikace se k ní úspěšně připojuje pomocí login=sa a password="". Spojení funguje.

Nicméně, to je odmítnuto od PgAdmin III sám. Dostanu:

Error connecting to the server: fe_sendauth: no password supplied

Jak se připojím k databázi z PgAdmin III pomocí prázdného hesla?

UPRAVIT

Toto je pouze test, nikoli výrobní kód.

21

Mohu se připojit k mé instanci postgresu z pgAdmin III bez hesla pro každého uživatele včetně superuživatelů, jako je postgres.

Protože se připojujete ok od jiného klienta, není důvod, proč byste neměli být schopni se připojit z pgAdmin, pokud jsou na stejné pracovní stanici - pokud některá pravidla brány firewall na samotném klientovi nepovolují jeden program, ale ne jiný.

Pokud je problém specifický pro tohoto klienta, možná budete muset změnit jednu nebo více z následujících možností:

  • pg_hba.conf
Hostujte všech 192.168.0.nnn/32 důvěryhodnosti
  • postgresql.conf
listen_addresses = '*'
  • firewall na vašem postgres serveru, např. iptables:
-A VSTUP -s 192.168.0.nnn -m stav - stav NOVINKA -j ACCEPT

Ale Doporučuji, abyste nic z toho nedělali. Manuál říká následující důvody:

ověřování důvěryhodnosti je vhodné pouze pro připojení TCP/IP, pokud důvěřujete každému uživateli na každém počítači, který má povoleno připojení k serveru pomocí řádků pg_hba.conf, které určují důvěryhodnost. Je zřídka rozumné použít důvěru pro všechna připojení TCP/IP jiná než připojení od localhost (127.0.0.1).

Místo toho zvažte buď:

  • pomocí hesla a identifikace md5
  • tunelující port 5432 přes ssh

Tuto odpověď jsem našel jinde.

Pokud je vaše databáze na místním hostiteli, zkuste pole Host nechat prázdné v připojení, namísto použití „localhost“ nebo „127.0.0.1 ″. Toto říká PgAdmin, aby se připojil přes místní unixový soket namísto TCP.

31
Alex Jodidio