Khắc phục sự cố này bằng createuser
sẽ không hoạt động. Theo man
trang cho createuser
, nó nói rằng đăng nhập sẽ không thành công nếu bạn thực sự cần mật khẩu và đặt --no-password
. createuser
chỉ tạo một người dùng. Nó không không quyết định cách người dùng sẽ phải xác thực.
Xác thực được xử lý chủ yếu trong pg_hba.conf
, quyết định có hay không yêu cầu mật khẩu khi đăng nhập. Tôi chưa bao giờ chạy PostgreSQL trên OS X. Trên Linux, chứng chỉ kho của bản phân phối của tôi trông như thế này:
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all ident
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
host all all ::1/128 trust
Đảm bảo rằng bạn có một cái gì đó giống như dòng đầu tiên để truy cập phát triển. Lưu ý:psql
sẽ cố gắng kết nối với ổ cắm unix nếu không có --host
bộ tùy chọn. Dòng thứ hai sẽ được sử dụng nếu bạn cố gắng kết nối với psql --host localhost