Mam działającą bazę danych PostgreSQL. Teraz chciałbym zautomatyzować niektóre operacje na mojej bazie danych, ale mam problem z hasłem.
Używam następującego skryptu bash:
#!/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"
Po uruchomieniu skryptu bash pojawia się następujący błąd:
psql: fe_sendauth: no password supplied
Próbowałem nawet skonfigurować plik .pgpass w moim katalogu domowym, ale bezskutecznie:
*:*:*:postgres:postgres
Uruchomiłem następujące polecenie:
sudo chmod 0600 .pgpass
Niemniej jednak nie wydaje się, aby którakolwiek z metod działała. Czy ktokolwiek ma jakiś pomysł? Czy zapomniałem coś zrobić?
.pgpass
Jest w swoim katalogu domowym? Nie w tym postgres
użytkownika?
sudo su -c psql postgres psql ...
zamiast tego.