Keine Passworteingabe in psql möglich

Hallo,

ich habe kürzlich postgres 8.3.3 und dann postgis 1.3.3 unter Windows XP Home (SP2) installiert. PGAdmin ist ebenfalls installiert und ich habe auch bereits mit PGAdmin eine räumliche DB angelegt und eine feature class erzeugt.

Allerdings kann ich leider nicht das Kommandozeilenwerkzeug psql verwenden. Immer wenn ich die Befehlzeile starte werde ich zur Passworteingabe “geprompt”. Der Cursor blinkt nur, allerdings wird keinerlei Tasteneingabe angezeigt!

Ich würde mich über Unterstützung freuen!

Viele Grüße, Uwe

Nun, mit welchen Parametern rufst du denn psql auf?
Welche Datenbanken gibt es in deinem System, welche User hast du bereits konfiguriert und wie schaut deine pg_hba.conf Datei aus?

In letzterer wirst du viele Hinweise finden, wie du Zugriffsmöglichkeiten konfigurieren kannst.

Hallo,

habe jetzt noch etwas ausprobiert-jetzt klappt es!
Zunächst habe ich mich am pgAdmin angemeldet MIT Speicherung des Passworts. In der Datei “pgpass.conf” befindet sich jetzt ein Eintrag.
Habe mich dann wieder angemeldet und die Passwortspeicherung deaktiviert- dann geht es nicht mit psql, da ich kein Passwort eingeben kann. Die Datei “pgpass.conf” hat dann auch keine Eintrag mehr.

Also, ich bin froh, dass es jetzt klappt. Allerdings wäre es schon smart, wenn der User sich mit einem Passwort anmelden müßte.
Ok, für den privaten Gebrauch ist das vielleicht unwichtig.

Anbei noch ein Auszug aus meiner “pg_hba.conf”

Put your actual configuration here

----------------------------------

If you want to allow non-local connections, you need to add more

“host” records. In that case you will also need to make PostgreSQL listen

on a non-local interface via the listen_addresses configuration parameter,

or via the -i or -h command line switches.

TYPE DATABASE USER CIDR-ADDRESS METHOD

IPv4 local connections:

host all all 127.0.0.1/32 md5

IPv6 local connections:

#host all all ::1/128 md5

==============================================


Schöne Dank und viele Grüße,
Uwe

Hallo,

hier die Infos zu psql:
PostgreSQL: Documentation: Manuals: PostgreSQL 8.3: psql

Sicher, dass Du das Passwort wirklich eingegeben hast (mit Enter/Return abschließen )? :wink:

Dann würde vermutlich eine Meldung wie diese kommen:
psql: FATAL: password authentication failed for user “Dein Username”

psql verbindet sich mit dem gleichlautenden User und Datenbank im Server mit dem man psql aufruft, wenn man dies nicht explizit angibt wie pgAdmin dies tut.
Man muss den Parameter “-U” benutzen.

Bsp: psql -U postgres Datenbankname

Peter

Hallöchen,
nun hab ich hier schon einen Thread gefunden, aber so wirklich weiter helfen tut er mir nicht. Ich hab nämlich das gleiche Problem. Meine .pgpass-Datei wird ignoriert und ich muss jedes mal das Passwort manuell eingeben.
Ich möchte nämlich von einem anderen Server aus ein Backup machen, dass sollte natürlich auch automatisch funktionieren. (crontab hab ich schon eingestellt). Das Problem liegt halt an der Passwortabfrage.
Meine .pgpass sieht folgendermaßen aus:

//var//run//postgresql:5432:database:lxoffice :p asswort

Wenn ich jetzt folgende Kommando-Zeile schreibe:

pg_dump -Ulxoffice database > database.sql

fragt er mich trotzdem nach dem Passwort.

Also, wo mach ich da was falsch??? :confused:
Achso, die .pgpass-Datei liegt im Homeverzeichnis

LG blacktowa

In diesem Thread geht es aber um was anderes.

Also, wo mach ich da was falsch??? > :confused:
Achso, die .pgpass-Datei liegt im Homeverzeichnis

LG blacktowa

So, wie Du pg_dump aufrufst, sicherst Du aber nicht übers Netz. Außerdem ist Deine pgpass falsch aufgebaut.

Vielleicht hilft Dir pg_dump is ignoring my pgpass file und die Antwort von Tom Lane weiter.

Andreas

… tschuldige, dann hab ich das in den falschen thread geschrieben.

Aber wieso ist denn meine .pgpass falsch??? Sie ist doch in diesen Format geschrieben :
hostname:port:database:username:password

Ich hab sie von diesen Link: http://www.postgresql.org/docs/8.1/interactive/libpq-pgpass.html

Vorhin sah sie so aus:

//var//run//postgresql:5432:database:lxofficeasswort

Korrekt wäre:

hostname :p ort:database:username :p assword

Andreas

wenn ich jetzt “loacalhost:5432:database:lxoffice: passwort” ignoriert er diese auch. daher hab ich mich an den beitrag gehalten von dem link wo dann anstatt localhost /var/run/postgresql kommt_http://www.postgresql.org/docs/8.1/interactive/libpq-pgpass.html_http://www.postgresql.org/docs/8.1/interactive/libpq-pgpass.html

Ich zitiere jetzt noch einmal Dich:

Ich möchte nämlich von einem anderen Server aus ein Backup

Selbst wenn Du localhost richtig geschrieben hättest, wäre es falsch geschrieben.

Andreas

ja, das ist mir dann auch aufgefallen, dass ich das falsch geschrieben habe.
zur zeit versuche ich aber auf dem server, wo die datenbank ist, das backup zu machen. es muss ja erst mal so funktionieren, bevor ich das von einem anderen server machen möchte. hätte ich dazu sagen sollen - entschuldige.
also, wenn wir davon ausgehen würden, dass ich das backup von den rechner mache, wo die datenbank drauf ist, so müsste ja localhost richtig sein oder?

Probier mal mit IP-Adresse statt localhost, so wie in dem Link, den ich schon nannte, auch empfohlen.
Und beim Aufruf -h 127.0.0.1 verwenden.

Andreas

Erfolgserlebnis :smiley: Es funktioniert ^^ Vielen Dank