Eu tenho um banco de dados PostgreSQL em funcionamento. Agora eu gostaria de automatizar algumas operações no meu banco de dados, mas tenho um problema com a senha.
Estou usando o seguinte script 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"
Quando executo o script bash, recebo o seguinte erro:
psql: fe_sendauth: no password supplied
Eu até tentei configurar o arquivo .pgpass no meu diretório pessoal, mas sem sucesso:
*:*:*:postgres:postgres
Eu executei o seguinte comando:
sudo chmod 0600 .pgpass
No entanto, parece que nenhum dos métodos funciona. Alguém tem alguma ideia? Estou esquecendo de fazer alguma coisa?
.pgpassestá no seu diretório pessoal? Não está no postgresusuário?
sudo su -c psql postgres psql ...vez disso.