У меня есть работающая база данных PostgreSQL. Теперь я хотел бы автоматизировать некоторые операции с моей базой данных, но у меня проблема с паролем.
Я использую следующий скрипт 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"
Когда я запускаю скрипт bash, я получаю следующую ошибку:
psql: fe_sendauth: no password supplied
Я даже пытался настроить файл .pgpass в моем домашнем каталоге, но безрезультатно:
*:*:*:postgres:postgres
Я выполнил следующую команду:
sudo chmod 0600 .pgpass
Тем не менее, не похоже, что какой-либо из методов работает. У кого-нибудь есть идеи? Я забыл что-то сделать?
.pgpass
в вашем домашнем каталоге? Не в postgres
пользовательском?
sudo su -c psql postgres psql ...
вместо.