Ergebnis 1 bis 3 von 3

Thema: pg_dump ung pg_restore

  1. #1
    pg_smu ist offline Neuer Benutzer
    Registriert seit
    10.05.2007
    Beiträge
    2

    Standard pg_dump ung pg_restore

    Hallo,

    ich habe eine Frage an euch, denn ich will mehrere Tabellen, Funktionen und Views in eine andere Datenbank migrieren. Ich benutze postgresql-8.1 unter Linux. Dafür wollte ich das Abladen der Daten mit pg_dump und das Wiederherstellen mit pg_restore machen. Aber da ich alles in eine sql-Datei packe, kann ich kein pg_restore verwenden. Deshalb mache ich es mit psql:
    Code:
    psql -f migration.sql -d mydbname
    Damit bekomme ich aber einige Fehler, weil anscheinend die Tabellen nicht in der richtigen Reihenfolge in die dump-Datei geschrieben werden. Die Db läuft zwar gut, aber bei der Migration sieht es etwas unschön aus.
    Code:
    psql:migration.sql:11: ERROR: relation "public.user" does not exist
    oder ERROR: table "user" does not exist
    Wie könnte ich es denn besser machen? Viel. doch mit einer Archivdatei und danach mit pg_restore? Wie...
    Gruss

  2. #2
    akretschmer ist gerade online Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.471

    Standard

    Zitat Zitat von pg_smu Beitrag anzeigen
    Hallo,

    Wie könnte ich es denn besser machen? Viel. doch mit einer Archivdatei und danach mit pg_restore? Wie...
    Gruss

    komplett ungetestet:

    mache ein pg_dump deiner DB. Dann ein pg_restore mit der Option -l. Das listet Dir alle Objekte auf. Das leitest Du in eine Datei. Diese mit $EDITOR so bearbeiten, daß nur die von Dir gewünschten Objekte drin stehen. Dann pg_restore mit -L und dieser von Dir editierten List-Datei aufrufen, da wird nur das übernommen, was in der List-Datei steht. Die Reihenfolge der Objekte sollte von Anfang an stimmen.

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  3. #3
    pg_smu ist offline Neuer Benutzer
    Registriert seit
    10.05.2007
    Beiträge
    2

    Standard

    Hi,

    Wenn ich ein restore machen will, muss ich doch meine db vorher in eine Archivdatei dumpen?
    Wenn ich es ohne eine Datei-Endung angebe funktioniert es auch, also so:
    Code:
     pg_dump dbname -f dateiname -Fc
    oder kann man das auch schöner machen?
    Das restoren funktioniert auch ohne Fehler, dazu habe ich auch nur diesen Befehl ausgeführt:
    Code:
    pg_restore dateiname -d dbname
    Mehr muss ich gar nicht machen.

Ähnliche Themen

  1. Frage pg_dump/pg_restore: Voraussetzungen unter Windows
    Von MatthiasR im Forum Sonstige
    Antworten: 0
    Letzter Beitrag: 10.01.2011, 11:58
  2. Problem Ausgabe von pg_dump/pg_restore unter Windows in Datei umleiten
    Von MatthiasR im Forum Sonstige
    Antworten: 2
    Letzter Beitrag: 22.12.2010, 12:06
  3. Antworten: 7
    Letzter Beitrag: 14.01.2009, 16:26
  4. pg_dump und pg_restore von 8.1 nach 8.2.5
    Von puba im Forum Allgemeines
    Antworten: 3
    Letzter Beitrag: 19.02.2008, 07:41
  5. pg_restore bricht ab
    Von methusalem im Forum Allgemeines
    Antworten: 4
    Letzter Beitrag: 22.06.2007, 11:01

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum