Einzelnes Schema wiederherstellen

Servus beisammen,

gibt es eine Möglichkeit, mit pg_restore ein einzelnes Schema herzustellen aus einem Dump?

Aktuell wird ein einzelnes Schema aus dem Backup benötigt. Leider bin ich gerade etwas planlos, wie man das am geschicktesten anstellt.

Herzlichen Dank für die Unterstützung!

Das geht leider nicht so ganz einfach.

Mit “pg_restore --list dumpfile” kann man sich den Inhalt des Dumps anzeigen lassen.

Aus dem Inhaltsverzeichnis kannst Du dann alle Objekte aus dem gewünschten Schema extrahieren (5. Spalte in jeder Zeile) und diese Liste in eine neue Datei schreiben. Diese neue Datei kann man dann via --use-list verwenden um nur diese Objekte zurückzuspielen. Wie Du das rausfiltern am geschicktesten machst hängt ein wenig von Deiner Umgebung ab. Unter Linux könnte man z.B. awk nehmen. Oder wenn der schema name eindeutig ist mit einem einfachen grep.

Vielen Dank für die Antwort!

pg_restore -d DATENBANKNAME -n SCHEMANAME DATEINAME

Damit hab ich’s jetzt auch geschafft.