Ich habe eine Datenbank mit dem Namen "A", die zwei Schemata "B" und "C" hat. Ich möchte Schema "B" auf einem anderen Server sichern und wiederherstellen. Ich bin mir nicht sicher, wie ich das machen soll, da ich neu bei Postgres bin. Muss ich eine neue Datenbank auf einem neuen Server mit dem Namen "A" erstellen und dann das Schema "B" darauf wiederherstellen? Bitte helfen Sie mit Befehlen.
--- Informationen aus dem Kommentar zu Peters Antwort:
Ich möchte Schema "B" + Daten sichern und wiederherstellen. Zweitens habe ich vergessen zu erwähnen, dass Postgresql 9.1 unter Ubuntu 12.04 läuft
quelle
-b
Option, um mit Blobs zu speichern. Beachten Sie, dass mit-b
allen Blobs nicht nur für ein einzelnes Schema hinzugefügt werden.Sie können Parameter hinzufügen.
-n [schema name]
Der Kommentar zu diesem Parameter lautet:quelle
* Einfaches Beispiel:
Ich erstelle "dump.bat" & "restore.bat" -Dateien in einem Fenster zum Sichern / Wiederherstellen
1 / Backup:
Ergebnisse:
* Hinweis: Einige wichtige Optionen:
2 / Wiederherstellen:
"C:\Program Files\PostgreSQL\9.1\bin\pg_restore.exe" --host localhost --port 5432 --username "postgres" --dbname "any_database" --no-password --no-owner --no-privileges --schema name_schema_B --verbose "C:\dump_resul.sql"
(**)(**) In Wirklichkeit können Sie pgAdmin (oder psql) zum Wiederherstellen verwenden, wenn Ihre Formatdatei * .sql ist. Sie sollten pg_restore verwenden, um eine Datei mit der Erweiterung .tar ( .bakup ...) wiederherzustellen.
quelle
--schema-only
, müssen sich die Daten im Speicherauszug befinden. Andernfalls haben Sie möglicherweise nicht die Berechtigung, den Tabelleninhalt auszuwählen.Ich habe ein Skript geschrieben, das dies trivial macht. Einfaches Exportieren von SQL-Funktionen und Tabellenschemata in einzelne
*.sql
Dateien. Vereinfacht die Verwaltung, Sicherung und Quellcodeverwaltung:https://gist.github.com/dantheman213/aff70ee42a11f2d1fa46983878cd62e1
quelle
Dies kann verwendet werden, um eine Schemasicherung durchzuführen
Dies kann verwendet werden, um die DB wiederherzustellen
quelle