thomas345
Goto Top

Wie bringe ich PostgreSQL dazu meine .pgpass Datei im Home Verzeichnis zu nutzen?

Hallo,

ich sitze mittlerweile schon Stunden daran und habe gefühlt das halbe Web zum Thema gelesen. Folgendes Problem habe ich mit PostgreSQL 9.0 auf einem Debian laufend:

Für ein shell script muss ich die Passworteingabe für z.B. den Befehl

psql -U mein_datebank_user -h 127.0.0.1 -d meine_datenbank

übergehen (automatisch ergänzen), damit der Befehl als cron-Job ausgeführt werden kann. Dazu habe ich die Datei /home/.pgpass angelegt und in die erste Zeile den Inhalt

*:*:meine_datenbank:mein_datenbank_user:mein_passwort

eingetragen. Leerzeichen existieren in der Datei nicht. Der Datei habe ich - wie in der Doku beschrieben - das Recht 0600 zugewiesen. Wenn ich nun den psql Befehl ausführe, sollte das Passwort - wenn ich das richtig verstanden habe - aus der .pgpass Datei genommen werden. Ich muss es aber dennoch manuell eingeben. Ich habe den Eindruck, dass er die Datei einfach ignoriert wird. Möglicherweise kann man auch irgendwo angeben, wo die .pgpass Datei liegt?!?!

Schöne Grüße

Thomas

Content-ID: 173077

Url: https://administrator.de/contentid/173077

Ausgedruckt am: 23.11.2024 um 19:11 Uhr

sebfoe
Lösung sebfoe 14.09.2011, aktualisiert am 16.12.2013 um 17:40:45 Uhr
Goto Top
Hallo Thomas,

das File (.pgpass) muss im Home Verzeichnis des Users(!) liegen (also /home/#USERNAME#/.pgpass)

ls -l /home/`whoami`/.pgpass

Ausgabe:
-rw------- 1 username username 56 2011-05-31 14:54 /home/username/.pgpass

Wenn das So aussieht muss es funktionieren
thomas345
thomas345 14.09.2011 um 13:09:32 Uhr
Goto Top
Hallo sebfoe,

"das File (.pgpass) muss im Home Verzeichnis des Users(!) liegen (also /home/#USERNAME#/.pgpass)"

das hat geholfen, du bist damit heute mein persönlicher Held. :D

Grüße