ฉันมีฐานข้อมูล PostgreSQL ขึ้นและทำงาน ตอนนี้ฉันต้องการดำเนินการบางอย่างในฐานข้อมูลของฉันโดยอัตโนมัติ แต่ฉันมีปัญหากับรหัสผ่าน
ฉันใช้สคริปต์ทุบตีต่อไปนี้:
#!/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"
เมื่อฉันเรียกใช้สคริปต์ทุบตีฉันได้รับข้อผิดพลาดต่อไปนี้:
psql: fe_sendauth: no password supplied
ฉันได้ลองกำหนดค่าไฟล์ .pgpass ในโฮมไดเร็กตอรี่ของฉันแล้ว แต่ไม่มีประโยชน์:
*:*:*:postgres:postgres
ฉันได้รันคำสั่งต่อไปนี้:
sudo chmod 0600 .pgpass
อย่างไรก็ตามดูเหมือนว่าจะไม่มีวิธีการใดที่ใช้งานได้ ไม่มีใครมีความคิดใด ๆ ฉันลืมที่จะทำอะไรบางอย่าง?
.pgpass
อยู่ในของคุณไดเรกทอรีบ้าน? ไม่ได้อยู่ในpostgres
ผู้ใช้ใช่หรือไม่
sudo su -c psql postgres psql ...
แทน