我有一个正在运行的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
但是,似乎没有任何一种方法有效。有谁有想法吗?我忘了做某事吗?
该
—
Milen A. Radev 2013年
.pgpass
是你的 home目录?不属于postgres
用户的吗?
是的,它在我的主目录中,即/ home / server2 /
—
阿里巴巴2013年
sudo su -c psql postgres psql ...
。