Wir haben in unserem Studio ein Netzwerk über das alle Rechner, auf denen mAirlist installiert ist, eingerichtet. Darüber können alle Rechner die Datenbank erreichen. Dies ist eine Postgre sql-Datenbank. In der sind alle IPs der Rechner eingetragen, denen ein Zugriff erlaubt wird. Dennoch kann ein Rechner nicht auf die Datenbank zugreifen, obwohl er im Netzwerk angemeldet und seine IP in der Datenbank verzeichnet ist. Die Fehlermeldung lautet “SQL error: could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host “192.168.2.101” and accepting TCP/IP connections on port 5432?” Wo liegt das Problem?
Eventuell ist eine Firewall aktiv? TCP Port 5432 muss auf dem PostgreSQL-Server für eingehende Verbindungen freigegeben wewrden.
Die Firewall ist daktiviert und der Port in der Datenbank freigegeben. Alle anderen REchner können auch problemlos zureifen.
Und die anderen, funktionierenden Client-Rechner und der Server sind auch alle in diesem 192.168.2.xxx-Netz?
Wenn nicht irgendwo ein dummer Tippfehler in den IPs ist, scheint mir das Problem dann eher auf der Seite des nicht funktionierenden Client-PCs zu liegen.
“Connection refused” heißt zwar im Regelfall, dass auf dem Server der entsprechende Dienst nicht läuft (oder zumindest nicht auf der angegebenen IP horcht, falls der Server mehrere Netzwerkkarten hat) und das dortige Betriebssystem die Verbindung deswegen ablehnt. Wenn die anderen Clients problemlos funktionieren, ist dies aber ziemlich ausgeschlossen. Selbst bei einem fehlenden/fehlerhaften Eintrag in der pg_hba.conf würde der PostgreSQL-Prozess die Verbindung zunächst annehmen und dann erst im zweiten Schritt, nach Prüfung der pg_hba-Einträge, wieder mit einer Fehlermeldung trennen.
Auf dem Client-PC ist nicht etwa eine Firewall-Software installiert, die den Verbindungsaufbau ihrerseits ablehnen könnte?
Auch auf den Client-PC ist die Firewall von Windows deaktiviert und sonst ist keine Software installiert.
Könnt auch ein Tipp-Fehler in der Subnet-Maske sein. Kannst Du den Server vom Client her anpingen?
Das anpingen funktioniert problemlos.
Wie hast Du due pg_hba.conf eingerichtet?
Steht dort für Dein Subnetz eine Regel
host all all 192.168.1.0/24 md5
Das müsste ich mal überprüfen. Wobei alle anderen Rechner mit mAirlist problemlos über das Netzwerk auf die Datenbank zugreifen können.
Wenn die pg_hba.conf falsch ist, dann kommt normalerweise kein timeout sondern die explizite Meldung “missing pg_hba entry?”
Diese Meldung erscheint nicht, sondern nur die oben beschriebene, wenn ich die Verbindungsdaten eingebe diese teste.