การเชื่อมต่อ Postgresql ถูกปฏิเสธ


2

ฉันพยายามเชื่อมต่อกับฐานข้อมูล postgresql ของฉันจากระยะไกล ฉันมีสองเครื่องเสมือนตั้งค่าทั้งสองทำงานอูบุนตู 14.04 ฉันกำลังพยายามเชื่อมต่อกับ vm ที่สองโดยใช้ vm แรกที่ใช้

psql -h 10.0.1.23 -U postgres -d postgres

แต่ฉันได้รับข้อผิดพลาด:

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

ฉันเปลี่ยน pg_hba.conf และเพิ่มแล้ว

host all all 10.0.1.64/24 md5
host all all * md5
host all all 0.0.0.0/0 md5

และเปลี่ยน postgresql.conf Listen_address = "*"

ในความพยายามที่จะอนุญาตการเชื่อมต่อที่เข้ามาทั้งหมด ฉันได้ลองเปลี่ยนการตั้งค่าไฟร์วอลล์แล้ว แต่ฉันไม่แน่ใจว่าพอร์ตนั้นรับฟังการเชื่อมต่อหรือไม่

แก้ไข: ผลลัพธ์จาก

netstat -an | grep -E '^tcp[^6].*LISTEN'
tcp   0   0 127.0.1.1:53   0.0.0.0:*    LISTEN
tcp   0   0 0.0.0.0:22     0.0.0.0:*    LISTEN
tcp   0   0 127.0.0.1:631  0.0.0.0:*    LISTEN
tcp   0   0 0.0.0.0:23     0.0.0.0:*    LISTEN
tcp   0   0 127.0.0.1:5432 0.0.0.0:*    LISTEN

โปรดแก้ไขคำถามของคุณเพื่อรวมเอาท์พุทของการทำงานnetstat -an | grep -E '^tcp[^6].*LISTEN'ในขณะที่ PostgreSQL เปิดใช้งานอยู่
CVn

เซิร์ฟเวอร์ไม่รับฟังบน 10.0.1.23 เฉพาะบนอุปกรณ์วนรอบ (127.0.0.1) แต่มันก็สายแล้วสมองของฉันก็หยุด
rsm

ดังนั้นฉันจะสามารถเปลี่ยนแปลงสิ่งที่เซิร์ฟเวอร์ฟังอยู่ได้อย่างไร
Jonathan

คำตอบ:


6

เห็นได้ชัดว่าฉันลืมลบ # จาก Listen_address = "*" มันเป็นความคิดเห็นตลอดเวลา ฉันเป็นใบ้


1
ไม่เป็นไร. ความผิดพลาดที่ซื่อสัตย์ เราทำทุกอย่างเรียบร้อยแล้ว :)
โธมัส Farvour

ฉันจะเปลี่ยนการกำหนดค่าสำหรับ 100 ครั้ง, restart PG 100 ครั้งและหานี้ :)
มะดัน Sapkota

ฉันทำงานเป็นโปรแกรมเมอร์มานานกว่า 10 ปีและวันนี้ฉันใช้เวลาหลายชั่วโมงในการดีบักก่อนที่คำตอบนี้จะช่วยฉันได้
pgsandstrom

1

ตรวจสอบให้แน่ใจว่าไฟล์มีรายการสำหรับpostgresql.conf listen_addresses='*'ดูเหมือนว่าคุณกำลังใช้ชื่อพารามิเตอร์การกำหนดค่าที่ไม่ถูกต้องและอาจมีช่องว่างโดยรอบเครื่องหมายดอกจัน

สุดท้ายให้แน่ใจว่าคุณเริ่ม postgres หลังจากทำการเปลี่ยนแปลงเหล่านี้


1

ทำตาม

อัปเดต :/var/lib/pgsql/<version>/data/postgresql.conf

เปลี่ยนแปลง :#listen_addresses = 'localhost' to listen_addresses = '*'

เริ่มบริการใหม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.