Datenbank auf neuen Server migrieren

Hallo Leute,

Ich soll unsere bestehende Postgres Datenbank auf einen neuen Server packen und gleichzeitig auf die neueste Version updaten.

Ist sowas ohne Probleme möglich?
aktuelle Version ist 8.1.8

Und vor allem wie muss ich dabei vorgehen?

habe mir gerade in der doku pg_dump angesehen und eigentlich müsste es damit ja gehen oder?


meine gedachte Reihenfolge:

  1. Postgres auf neuen Server installieren
  2. pg_dumb dbname > outfile auf alten Server machen
  3. Datei auf neuen Server übertragen
  4. psql dbname < infile auf neuen Server machen


    Reicht das schon oder muss ich da noch mehr machen? Und wenn ja, was?



    Schonmal Vielen Dank im vorraus
    Gruß Nico

Vermutlich sind beide Server gleichzeitig Up und es besteht eine Netzwerk-Verbindung?

Dann solltest Du das pg_dump der höheren Version gegen den alten Server einsetzen. Hint: pg_dump -h <alter_Server>

Aufpassen, pg_dump enthält NICHT Metadaten wie Benutzer, also eher pg_dumpall nutzen.

Andreas

Ja, natürlich.


Den Teil habe ich nicht so richtig verstanden
Mit -h <alter_server> gebe ich ihm doch nur die Serveradresse mit oder?
hat er die nicht automatisch wenn ich den Befehl auf dem entsprechenden Server ausführe?


ok, werde ich beachten und dann wohl eher pg_dumball nehmen

Du sollst auf dem NEUEN Server das pg_dump(all) mit dieser Option starten. Damit nutzt Du das neuere pg_dump(all) gegen den alten Server.

Andreas

ohne Probleme mag aus Sicht der DB durchaus gelten - nur ist es sehr wahrscheinlich, dass eine bestehende Anwendung nicht mehr korrekt funktioniert (sofern die weiterhin benutzt werden soll - also vorsicht).

Möglicherweise kann man den DB-Server aber so konfigurieren, dass er den alten Slang versteht. Das muss man aber probieren.

ah ok
das klingt sinnvoll xD


ohne Probleme mag aus Sicht der DB durchaus gelten - nur ist es sehr wahrscheinlich, dass eine bestehende Anwendung nicht mehr korrekt funktioniert (sofern die weiterhin benutzt werden soll - also vorsicht).

Möglicherweise kann man den DB-Server aber so konfigurieren, dass er den alten Slang versteht. Das muss man aber probieren.

ja gut das muss ich dann ausprobieren. Vielleicht geht ja mal alles auf Anhieb.



Vielen Dank für eure Antworten

Mach das. Probleme könnten dort auftreten, wo Du Dich auf automatische CASTs verlassen hast. Die gibt es in 8.3 an vielen Stellen nicht mehr.

Andreas

Ich glaube sowas haben wir nicht mit drin.
Und wenn doch Probleme auftauchen werd ich mich hier wieder melden :wink:

ebent - es ist eher unwahrscheinlich, dass sich jemand bei der implementierung einer anwendung auf einer 8.1 db um explizite casts bemueht hat