Discussion:
PostgreSQL auf einen anderen Rechner umziehen?
(zu alt für eine Antwort)
Schultze
2006-11-21 08:54:56 UTC
Permalink
Hallo Gruppe,

ich habe folgendes Problem:

Auf einem schon recht betagten Rechner unter RedHat 6.2 läuft eine
PostgreSQL Datenbank. Ich will nun den Rechner und das OS
aktualisieren, habe aber keine Ahnung von Datenbanken:-(

Gibt es einen sicheren Weg, alle bisherigen Daten aus der DB auf einen
anderen Rechner zu übertragen? Ohne, dass ich die Datenbank neu
anlegen muss.

Ich würde gern einen Rechner mit aktuellerer Hardware nehmen, da ein
Linux draufpacken, PostgreSQL installieren und dann die Datenbank
übertragen. Geht das? Falls ja, bitte ich um Tips und Hinweise.

Danke,
Schultze
Torsten Schneider
2006-11-21 09:05:42 UTC
Permalink
Post by Schultze
Gibt es einen sicheren Weg, alle bisherigen Daten aus der DB auf einen
anderen Rechner zu übertragen? Ohne, dass ich die Datenbank neu
anlegen muss.
Klar, dafür nimmt man pg_dump und pg_restore. Das ist der Standardweg.


Grüße, Torsten
Andreas Kretschmer
2006-11-21 09:11:33 UTC
Permalink
Post by Schultze
Hallo Gruppe,
Auf einem schon recht betagten Rechner unter RedHat 6.2 läuft eine
PostgreSQL Datenbank. Ich will nun den Rechner und das OS
aktualisieren, habe aber keine Ahnung von Datenbanken:-(
Gibt es einen sicheren Weg, alle bisherigen Daten aus der DB auf einen
anderen Rechner zu übertragen? Ohne, dass ich die Datenbank neu
anlegen muss.
Natürlich geht das nicht, die Daten gehen alle verlren, wo lebst Du denn?
*g*
Post by Schultze
Ich würde gern einen Rechner mit aktuellerer Hardware nehmen, da ein
Linux draufpacken, PostgreSQL installieren und dann die Datenbank
übertragen. Geht das? Falls ja, bitte ich um Tips und Hinweise.
Installier auf dem neuen Rechner erst einmal PG und bringe das zum
laufen. Du wirst ja sicherlich dort eine aktuellere Version haben als
auf der alten Kiste.

Dann machst Du mit dem pg_dumpall _DES_ _NEUEN_ _RECHNERS_ eine
Datensicherung des alten Rechners, übers Netz.
Der Grund ist, daß ältere pg_dump(all) Probleme z.B. bei der korrekten
Reihenfolge von einander abhängigen Objekten haben.

Diesen Dump kannst Du dann auf dem neuen Rechner einspielen, mit psql.
Du kannst das auch gleich über das Netz direkt pipen.


end
Andreas
--
Andreas Kretschmer
Linux - weil ich es mir wert bin!
GnuPG-ID 0x3FFF606C http://wwwkeys.de.pgp.net
Deutsche PostgreSQL User Group: http://pgug.de
Schultze
2006-11-21 09:43:03 UTC
Permalink
Hallo Andreas,
Post by Andreas Kretschmer
Post by Schultze
Gibt es einen sicheren Weg, alle bisherigen Daten aus der DB auf einen
anderen Rechner zu übertragen? Ohne, dass ich die Datenbank neu
anlegen muss.
Natürlich geht das nicht, die Daten gehen alle verlren, wo lebst Du denn?
*g*
das war nicht meine Frage. Es ging mir vor allem darum, dass ich nicht
die einzelnen Definitionen machen muss, bevor ich die Daten
überspielen kann. Dass die Daten nicht verloren gehen, ist mir schon
klar:-)
Post by Andreas Kretschmer
Installier auf dem neuen Rechner erst einmal PG und bringe das zum
laufen. Du wirst ja sicherlich dort eine aktuellere Version haben als
auf der alten Kiste.
Da würde ich dann schon auf die derzeit aktuelle stabile Version
zurückgreifen wollen, ja.
Post by Andreas Kretschmer
Dann machst Du mit dem pg_dumpall _DES_ _NEUEN_ _RECHNERS_ eine
Datensicherung des alten Rechners, übers Netz.
Aha. Klingt erstmal nicht kompliziert.
Post by Andreas Kretschmer
Diesen Dump kannst Du dann auf dem neuen Rechner einspielen, mit psql.
Du kannst das auch gleich über das Netz direkt pipen.
Direkt pipen klingt auch gut. Ich kann die Rechner per Crossover-Kabel
direkt verbinden, dann funkt auch nichts dazwischen.

Danke erstmal für die Tips, wenn ich soweit bin und nicht weiterkomme,
dann frage ich nochmal nach.
Post by Andreas Kretschmer
end
Andreas
Gruß,
Schultze
Post by Andreas Kretschmer
Andreas Kretschmer
Linux - weil ich es mir wert bin!
Der gefällt mir;-)
Andreas Kretschmer
2006-11-21 09:53:19 UTC
Permalink
Post by Schultze
Post by Andreas Kretschmer
Dann machst Du mit dem pg_dumpall _DES_ _NEUEN_ _RECHNERS_ eine
Datensicherung des alten Rechners, übers Netz.
Aha. Klingt erstmal nicht kompliziert.
Nein, aber man sollte es beachten.
Post by Schultze
Post by Andreas Kretschmer
Diesen Dump kannst Du dann auf dem neuen Rechner einspielen, mit psql.
Du kannst das auch gleich über das Netz direkt pipen.
Direkt pipen klingt auch gut. Ich kann die Rechner per Crossover-Kabel
direkt verbinden, dann funkt auch nichts dazwischen.
Jepp. Du kannst das dump-Tool auf dem neuen direkt aufrufen, und mit -h
den alten Rechner spezifizieren, und mit einer Pipe direkt psql
aufrufen und den Dump da reinwerfen.

Da Du ja 2 Rechner hast, brauchst auch nicht erst mit unterschiedlichen
Ports auf einer Maschine rumzumachen.
Post by Schultze
Danke erstmal für die Tips, wenn ich soweit bin und nicht weiterkomme,
dann frage ich nochmal nach.
kein Problem.


end
Andreas
--
Andreas Kretschmer
Linux - weil ich es mir wert bin!
GnuPG-ID 0x3FFF606C http://wwwkeys.de.pgp.net
Deutsche PostgreSQL User Group: http://pgug.de
Schultze
2006-11-21 09:54:29 UTC
Permalink
Post by Andreas Kretschmer
...
Diesen Dump kannst Du dann auf dem neuen Rechner einspielen, mit psql.
Du kannst das auch gleich über das Netz direkt pipen.
Da fällt mir noch eine Frage ein.

Auf dem jetzigen Rechner gibt es Script, was per cron aufgerufen wird
und die Daten an die Datenbank übergibt. Funktioniert dieses Script
dann noch, oder kann es da Probleme mit einer aktuelleren Version von
PostgreSQL geben?
Muss ich die Benutzer neu anlegen, oder werden auch diese mit
übernommen?

Danke,
Schultze
Andreas Kretschmer
2006-11-21 09:59:25 UTC
Permalink
Post by Schultze
Da fällt mir noch eine Frage ein.
Auf dem jetzigen Rechner gibt es Script, was per cron aufgerufen wird
und die Daten an die Datenbank übergibt. Funktioniert dieses Script
dann noch, oder kann es da Probleme mit einer aktuelleren Version von
PostgreSQL geben?
Sollte kein Problem machen, es gibt aber Stolperfallen (add missing from
-> Google weiß mehr dazu).
Post by Schultze
Muss ich die Benutzer neu anlegen, oder werden auch diese mit
übernommen?
pg_dumpall dumpt _ALLE_ Objekte, also auch User etc.


end
Andreas
--
Andreas Kretschmer
Linux - weil ich es mir wert bin!
GnuPG-ID 0x3FFF606C http://wwwkeys.de.pgp.net
Deutsche PostgreSQL User Group: http://pgug.de
Siegfried Schmidt
2006-11-21 17:13:05 UTC
Permalink
Hallo Andreas,
Post by Andreas Kretschmer
Post by Schultze
Muss ich die Benutzer neu anlegen, oder werden auch diese mit
übernommen?
pg_dumpall dumpt _ALLE_ Objekte, also auch User etc.
Aber keine Unix-User, die event. zur Autentifizierung gebraucht werden.
Könnte z.B. bei den cron-Scripten der Fall sein.


Siegfried
--
http://www.schmidt.ath.cx
Andreas Kretschmer
2006-11-21 17:52:46 UTC
Permalink
Post by Schultze
Hallo Andreas,
Post by Andreas Kretschmer
Post by Schultze
Muss ich die Benutzer neu anlegen, oder werden auch diese mit
übernommen?
pg_dumpall dumpt _ALLE_ Objekte, also auch User etc.
Aber keine Unix-User, die event. zur Autentifizierung gebraucht werden.
Könnte z.B. bei den cron-Scripten der Fall sein.
*NIX-User sind keine Objekte der DB. Wenn Du so kommst, wäre die nächste
Frage nach den HOME-Verzeichnissen der User, nach den Mailboxen und den
Pornosammlungen.


end
Andreas
--
q: why do so many people take an instant dislike to mysql?
a: it saves time (oicu in #postgresql)
Explaining the concept of referential integrity to a mysql user is like
explaining condoms to a catholic (Shadda in #postgresql)
Siegfried Schmidt
2006-11-21 21:03:25 UTC
Permalink
Hallo Andreas,
Post by Andreas Kretschmer
*NIX-User sind keine Objekte der DB. Wenn Du so kommst, wäre die nächste
Frage nach den HOME-Verzeichnissen der User, nach den Mailboxen und den
Pornosammlungen.
Für das Gelingen eines Umzug ist ziemlich nebensächlich wo ein Objekt
aufgehängt ist, wesentlich ist ob es für die Funktion auf dem Zielsystem
gebraucht wird oder nicht. Sollte die DB zufällig Pornos verwalten gehört
die Sammelung natürlich auch dazu.


Siegfried
--
http://www.schmidt.ath.cx
Andreas Kretschmer
2006-11-21 21:28:32 UTC
Permalink
Post by Schultze
Hallo Andreas,
Post by Andreas Kretschmer
*NIX-User sind keine Objekte der DB. Wenn Du so kommst, wäre die nächste
Frage nach den HOME-Verzeichnissen der User, nach den Mailboxen und den
Pornosammlungen.
Für das Gelingen eines Umzug ist ziemlich nebensächlich wo ein Objekt
aufgehängt ist, wesentlich ist ob es für die Funktion auf dem Zielsystem
gebraucht wird oder nicht. Sollte die DB zufällig Pornos verwalten gehört
die Sammelung natürlich auch dazu.
;-)

Klar. Aber es geht hier nicht um das Filesystem oder das, was im dritten
Schieber von oben im Schreibtisch liegt, sondern um das, was die DB
verwaltet. Ich nutze z.B. auch Dinge wie z.B. plsh und erzeuge damit via
LaTeX letztendlich PDFs. Da enstehen ganz gewaltige Abhängigkeiten, ich
brauche Schreibrechte in bestimmten Verzeichnissen, brauch diverse
Software (LaTeX, pdflatex, ...). Aber das sind Dinge, die _neben_ der DB
existieren, IMHO.

Aber hey: ich denke mal, wir brauchen uns hier deswegen nicht zu
streiten, oder?

Btw.: die Tatsache, daß in meiner Firma keiner Interesse daran hat, sich
für sowas zu interessieren, hat mir im Sommer diesen Jahres einen für
mich kostenlosen Rundflug quer durch Europa gebracht. Auch nicht schlecht,
oder? Oder anders formuliert: ich weiß, wovon ich rede...


end
Andreas
--
q: why do so many people take an instant dislike to mysql?
a: it saves time (oicu in #postgresql)
Explaining the concept of referential integrity to a mysql user is like
explaining condoms to a catholic (Shadda in #postgresql)
Loading...