không thể kết nối với cơ sở dữ liệu postgresql từ xa


16

Tôi đang cố gắng kết nối với cơ sở dữ liệu psql từ xa. Trước khi tôi thêm mục nhập pg_hba.conf bằng địa chỉ IP của khách hàng, tôi đã nhận được thông báo lỗi:

xdev@xdevbox:~$ psql -U postgres testdb -h 10.1.1.47
psql: FATAL:  no pg_hba.conf entry for host "10.201.50.71", user "postgres", database "testdb", SSL off

Tôi đã thêm IP của khách hàng với các cài đặt tin cậy. Tôi cũng đã thay đổi địa chỉ nghe trong postgres.conf trên máy chủ để nghe "*". Sau đó, tôi khởi động lại máy chủ cơ sở dữ liệu bằng cách sử dụng lệnh /etc/init.d/postgresql.

Bây giờ khi tôi cố gắng kết nối, tôi nhận được thông báo lỗi sau:

psql: could not connect to server: Connection refused
    Is the server running on host "10.1.1.47" and accepting
    TCP/IP connections on port 5432?

trong postgresql.conf, cổng được đặt thành 5432. Tôi không chắc chắn nên kiểm tra cái gì khác.

Cảm ơn


Bạn có thể ping địa chỉ đó không?
dezso 04/05/2015

1
Tôi muốn nói rằng DB không khởi động lại chính xác khi bạn khởi động lại nó. Kiểm tra các tệp nhật ký PostgreSQL để biết lý do tại sao - có thể là một lỗi đánh máy pg_hba.conf.
Craig Ringer

Tôi đã phải thay đổi địa chỉ nghe từ * thành địa chỉ IP cụ thể.
chấm

Câu trả lời:


22

Bạn phải cấu hình hai tập tin sau

pg_hba.conf

host all all 0.0.0.0/0 md5

postgresql.conf

listen_addresses='*'

Bạn phải kiểm tra xem cổng 5432 có mở không: http://www.yougetsignal.com/tools/open-ports/

Nếu không thì hãy thêm quy tắc vào iptables:

iptables -A INPUT -s 0/0 -p tcp --dport 5432 -j ACCEPT

0/0: Nếu bạn muốn bất cứ ai truy cập nó. Bạn có thể thay đổi nó thành một địa chỉ IP cụ thể hoặc một dải địa chỉ IP.


1
Chỉ là một bổ sung. Bạn không cần phải sử dụng một công cụ bên ngoài. Chỉ cần sử dụng telnet [yourServerIp] 5432nếu bạn chưa cài đặt telnet, bạn có thể sử dụng PowerShelltrên windows chẳng hạn.
Ionic

@Ionic đó là sự thật
Đan Mạch Khakwani

2
Hãy gọi tôi là hoang tưởng, nhưng tôi không tin tưởng quá nhiều dịch vụ trên mạng. ;-) Chỉ cần để ý. :-)
Ionic

công cụ kiểm tra cổng đã giúp tôi ở đây
Shobi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.