sql >> Database teknologi >  >> RDS >> PostgreSQL

Ingen adgangskodeprompt til postgresql superbruger

Din pg_hba.conf burde faktisk kræve en adgangskode til unix-socket-forbindelser, men der er stadig måder rundt om det, som du bør verificere:

  1. en .pgpass fil i postgres-hjemmemappen, der indeholder adgangskoden (tjek også PGPASSFILE miljøvariabel for en ikke-standard sti).

  2. PGPASSWORD miljøvariabel kunne indstilles.

Og der er også muligheden for, at du redigerer den forkerte pg_hba.conf-fil. Når den er tilsluttet som postgres, kan den korrekte sti opnås til verifikation med SHOW hba_file SQL-kommando.

Det kan også være en god idé at tjekke logfilen, /var/log/postgresql/postgresql-9.1-main.log for at bekræfte, at konfigurationsfilerne genindlæses, når du beder om det, og se efter enhver mistænkelig besked under godkendelsen.

Hvad angår grunden til, at adgangskodeløse forbindelser med postgres-brugeren er almindelige, er debian PG-9.1 pg_hba.conf har denne kommentar om at nægte dem:

# 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  

Da Debian og Ubuntu bruger de samme postgres-pakker, gælder dette også for Ubuntu.



  1. Hvordan kan jeg få det databasenavn, jeg er forbundet til via Hibernate?

  2. Hvordan finder jeg ud af, hvilken transaktion der forårsager en Venter på tabel-metadatalåsetilstand?

  3. hvordan fanger man pg_connect() funktionsfejl?

  4. MySQL Server på MAMP-Windows vil ikke starte