- Tôi đã cài đặt
PostgreSQL
trênEC2
máy và bây giờ tôi muốn thay đổi mật khẩu của người dùngpostgres
- tôi làm
$ sudo -u postgres psql psql (9.1.5) Type "help" for help. postgres=# ALTER USER postgres WITH PASSWORD 'newpasswd'; ALTER ROLE
- Sau đó, tôi thoát khỏi shell và cố gắng đăng nhập bằng mật khẩu mới
$ psql -U postgres -W Password for user postgres: psql: FATAL: Peer authentication failed for user "postgres"
PostgreSQL
Phiên bản của tôi là
$ psql --version
psql (PostgreSQL) 9.1.5
contains support for command-line editing
Tôi đang làm gì sai?
Cảm ơn bạn
CẬP NHẬT
Tôi đã thực hiện các thay đổi pg_hba.conf
và đây là giao diện
# 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
Sau đó tôi khởi động lại postgres
$ sudo /etc/init.d/postgresql restart
* Restarting PostgreSQL 9.1 database server [ OK ]
Tôi đã thử đăng nhập lại nhưng không thành công.
$ psql -U postgres -W
Password for user postgres:
psql: FATAL: Peer authentication failed for user "postgres"
pg_hba.conf
nó được thiết lập theo cách mà nó không chấp nhận xác thực mật khẩu.
pg_hba.conf