Ich habe eine laufende PostgreSQL-Datenbank. Jetzt möchte ich einige Vorgänge in meiner Datenbank automatisieren, aber ich habe ein Problem mit dem Kennwort.
Ich benutze das folgende Bash-Skript:
#!/bin/bash
export PGPASSWORD="postgres"
sudo -u postgres psql -d pg_ldap -w --no-password -h localhost -p 5432 -t -c "SELECT id FROM radusers WHERE id=1"
Wenn ich das Bash-Skript ausführe, wird folgende Fehlermeldung angezeigt:
psql: fe_sendauth: no password supplied
Ich habe sogar versucht, die .pgpass-Datei in meinem Home-Verzeichnis zu konfigurieren, aber ohne Erfolg:
*:*:*:postgres:postgres
Ich habe den folgenden Befehl ausgeführt:
sudo chmod 0600 .pgpass
Trotzdem scheint keine der Methoden zu funktionieren. Hat jemand eine Idee? Vergesse ich etwas zu tun?
.pgpass
ist in deinem Homeverzeichnis? Nicht in der des postgres
Benutzers?
sudo su -c psql postgres psql ...
stattdessen.