- ฉันติดตั้ง
PostgreSQL
บนEC2
เครื่องและตอนนี้ฉันต้องการเปลี่ยนรหัสผ่านของผู้ใช้postgres
- ฉันทำ
$ sudo -u postgres psql psql (9.1.5) Type "help" for help. postgres=# ALTER USER postgres WITH PASSWORD 'newpasswd'; ALTER ROLE
- จากนั้นฉันออกจากเชลล์และลองเข้าสู่ระบบด้วยรหัสผ่านใหม่
$ psql -U postgres -W Password for user postgres: psql: FATAL: Peer authentication failed for user "postgres"
PostgreSQL
รุ่นของฉันคือ
$ psql --version
psql (PostgreSQL) 9.1.5
contains support for command-line editing
ฉันทำอะไรผิด
ขอบคุณ
อัปเดต
ฉันทำการเปลี่ยนแปลงpg_hba.conf
และนี่คือลักษณะที่ปรากฏในขณะนี้
# Database administrative login by Unix domain socket
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
#local all all peer
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
จากนั้นฉันเริ่มต้นใหม่ postgres
$ sudo /etc/init.d/postgresql restart
* Restarting PostgreSQL 9.1 database server [ OK ]
ฉันลองลงชื่อเข้าใช้อีกครั้ง แต่ล้มเหลว
$ psql -U postgres -W
Password for user postgres:
psql: FATAL: Peer authentication failed for user "postgres"
pg_hba.conf