Tôi có một cơ sở dữ liệu PostgreQuery đang hoạt động. Bây giờ tôi muốn tự động hóa một số thao tác trên cơ sở dữ liệu của mình nhưng tôi gặp vấn đề với mật khẩu.
Tôi đang sử dụng tập lệnh bash sau:
#!/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"
Khi tôi chạy tập lệnh bash, tôi gặp lỗi sau:
psql: fe_sendauth: no password supplied
Tôi thậm chí đã cố gắng định cấu hình tệp .pgpass trong thư mục chính của mình nhưng không được:
*:*:*:postgres:postgres
Tôi đã chạy lệnh sau:
sudo chmod 0600 .pgpass
Tuy nhiên, dường như không có phương pháp nào hoạt động. Có ai có ý kiến gì không? Có phải tôi đang quên làm gì đó?
.pgpass
trong thư mục nhà của bạn ? Không phải trong một postgres
người dùng?
sudo su -c psql postgres psql ...
thay thế.