pg_restore: Verbindung zur Datenbank fehlgeschlagen

Hallo,

ich möchte eine Tabelle per dump/restore auf einen anderen Server kopieren, dump auf 8.2.9 und restore auf 8.4.5.

Hier der dump:
pg_dump -t basis.lucas_100m_brd_gk3 -Fc -o -h IPAdresse -p 5432 -U andi -W gis > /disk2/samba/exportdb/postgres/lucas_raster.out

Dann wird die Datei kopiert und soll auf einem anderen Rechner weiderhergestellt werden:

Beim restore bekomme folgende Fehlermeldung:
pg_restore -d gis -t basis.lucas_100m_brd_gk3 -Fc -h IPAdresse -p 5432 -U andi -W /disk1/samba/importdb/postgres/lucas_raster.out
Passwort:
pg_restore: [Archivierer (DB)] Verbindung zur Datenbank »gis« fehlgeschlagen: konnte nicht mit dem Server verbinden: Verbindungsaufbau abgelehnt
Läuft der Server auf dem Host »IPAdresse« und akzeptiert er
TCP/IP-Verbindungen auf Port 5432?

Ich habe schon an der pg_hba.conf herumgespielt, leider ohne Erfolg. Datenbank läuft natürlich, Zugriff mit pgAdmin ohne Probleme.

Viele Grüße Andreas

auf was steht listen_addresses ?

Andreas

war auskommentiert, ich habe es nun mit ‘localhost’ versucht, gleiche Fehlermeldung. Wenn ich die IP des Rechners hinzufüge (‘localhost, IP’), dann gibt es keine Fehlermeldung aber auch keine Wiederherstellung, ich erhalte gleich wieder den prompt…also möglicherweise noch ein anderes Problem!?

Nun ja. Der Parameter listen_addresses tut das, was man erwartet: er definiert die Adressen, auf denen der Server lauscht. Ist das z.B. auskommentiert, so lauscht er an keiner Adresse. Preisfrage an Dich: auf welche Adresse lauscht er bei ‘localhost’?

Das andere mögliche Problem: hast Du die pg_hba.conf angepaßt?

Andreas

Preisantwort (und was ist der Preis??): localhost sollte mit der lokalen IP identisch sein, keine Ahnung, warum er mit ‘localhost’ nicht wollte, nun geht es auch mit localhost ohne Fehlermeldung und ohne Wiederherstellung.

die pg_hba wurde modifiziert, weil ja sonst auch kein Zugriff über pgAdmin möglich wäre. Eingetragen ist bei IPV4:

host all all 127.0.0.1/32 trust
host all all 134.110.37.1/24 trust

localhost hat die 134.110.37.183 sollte also dabei sein…

localhost hat immer die 127.0.0.1 …

Andreas

jetzt mit etwas mehr Zeit:

localhost und die lokale IP sind 2 unterschiedliche Dinge. Du kannst Deine Netzkarte ausbauen und immer noch auf 127.0.0.1 pingen. Du kannst auch immer noch auf localhost lauschen.

die pg_hba wurde modifiziert, weil ja sonst auch kein Zugriff über pgAdmin möglich wäre. Eingetragen ist bei IPV4:

Depends. Ich bin mir grad nicht sicher, ob pgAdmin nicht auch via UNIX-Sockets arbeiten kann, ich denke mal ja (unter *NIX, lokal)

host all all 127.0.0.1/32 trust
host all all 134.110.37.1/24 trust

localhost hat die 134.110.37.183 sollte also dabei sein…

Dieser Satz enthält keinen Sinn. Noch mal von vorn: Du kommst von 134.110.37.183, das ist nicht der Rechner, wo PG läuft?

Davon abgesehen: Du traust allen Rechnern vom “Johann Heinrich von Thuenen-Institut (vTI)”, die in 134.110.37.0/24 sind? Ach ja: Du hast da auch eine ungültige CIDR-Adresse: 134.110.37.1/24
Möglicherweise geht es schon deswegen nicht.


Andreas

Kleine Gemeinheit am Rande:

Wir sind hier nicht bei MySQL.

Unter PostgreSQL ist “localhost” das, was im DNS oder in /etc/hosts als “localhost” eingetragen ist.

smile


Andreas

Die Konsequenzen sind durchaus real: ist die /etc/hosts Datei beschädigt oder gar nicht konfiguriert, klappt ggf. diese Auflösung nicht.
Ich habe schon einige Out-of-the-Box Linux-Installationen gesehen, die offline installiert wurden und bei denen diese Datei nicht alle notwendigen Einträge enthielt.

p { margin-bottom: 0.21cm; } Dieser Satz enthält keinen Sinn. Noch mal von vorn: Du kommst von 134.110.37.183, das ist nicht der Rechner, wo PG läuft?
Doch, das ist er. PostgreSQL ist in diesem Fall “lokal” installiert.




Ach ja: Du hast da auch eine ungültige CIDR-Adresse: 134.110.37.1/24
Tja, immerhin startet PostgreSQL mit dem Eintrag 134.110.37.1/24, dem ist nicht so, wenn ich 134.110.37.183 eintrage.