Lỗi bạn trích dẫn không liên quan gì đến pg_hba.conf
; nó không kết nối được, không phải là không cho phép kết nối.
Thực hiện những gì thông báo lỗi cho biết:
Kiểm tra xem tên máy chủ và cổng có chính xác không và người quản lý bưu điện có chấp nhận kết nối TCP / IP
Bạn chưa hiển thị lệnh tạo ra lỗi. Giả sử bạn đang kết nối trên localhost
cổng 5432
(mặc định cho cài đặt PostgreSQL tiêu chuẩn), sau đó:
-
PostgreSQL không chạy
-
PostgreSQL không lắng nghe các kết nối TCP / IP (
listen_addresses
trongpostgresql.conf
) -
PostgreSQL chỉ nghe trên IPv4 (
0.0.0.0
hoặc127.0.0.1
) và bạn đang kết nối trên IPv6 (::1
) hoặc ngược lại. Đây dường như là sự cố trên một số phiên bản Mac OS X cũ hơn có hành vi ổ cắm IPv6 kỳ lạ và trên một số phiên bản Windows cũ hơn. -
PostgreSQL đang lắng nghe trên một cổng khác với cổng mà bạn đang kết nối
-
(không chắc) có
iptables
quy tắc chặn kết nối lặp lại
(Nếu bạn không không kết nối trên localhost
, nó cũng có thể là một tường lửa mạng đang chặn các kết nối TCP / IP, nhưng tôi đoán bạn đang sử dụng giá trị mặc định vì bạn không nói).
Vì vậy, ... hãy kiểm tra những điều đó:
-
ps -f -u postgres
nên liệt kêpostgres
quy trình -
sudo lsof -n -u postgres |grep LISTEN
hoặcsudo netstat -ltnp | grep postgres
sẽ hiển thị địa chỉ TCP / IP và các cổng mà PostgreSQL đang lắng nghe
BTW, tôi nghĩ bạn phải sử dụng phiên bản cũ. Trong bản cài đặt 9.3 của tôi, lỗi khá chi tiết hơn:
$ psql -h localhost -p 12345
psql: could not connect to server: Connection refused
Is the server running on host "localhost" (::1) and accepting
TCP/IP connections on port 12345?