Wie man Backup von Funktionen nur in Postgres macht
Will ich backup aller Funktionen in meiner postgres-Datenbank.Wie man backup-Funktionen nur in Postgres?
InformationsquelleAutor der Frage vmb | 2012-12-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
verwenden
pg_getfunctiondef
; siehe system information Funktionen.pg_getfunctiondef
wurde Hinzugefügt, in PostgreSQL 8.4.Dump-Funktionen in einem schema Sie können die Abfrage der Systemtabellen in
pg_catalog
; sagen, wenn Sie wollte alles vonpublic
:ist es trivial zu ändern die oben zu sagen "aus allen Schemata außer denen Anfang mit
pg_
" statt, wenn das, was Sie wollen.In
psql
sichern Sie diese in einer Datei mit:Ausführen, die Ausgabe in eine andere DB, verwenden Sie so etwas wie:
Wenn Sie replizieren Funktionen zwischen DBs wie diese, obwohl, betrachten Sie die Speicherung der angesehensten Kopie der Funktion Definitionen als SQL-Skript in ein revision-control-system wie svn oder git, vorzugsweise so verpackt, wie eine PostgreSQL-Erweiterung. Sehen Verpackung Erweiterungen.
InformationsquelleAutor der Antwort Craig Ringer
Können Sie nicht sagen
pg_dump
dump nur Funktionen. Sie können jedoch machen Sie einen dump ohne Daten (-s
) und filtern Sie es auf wiederherstellen. Hinweis: die-Fc
Teil: dies erzeugt eine Datei fürpg_restore
.Zuerst den dump:
Dann erstellen Sie eine Liste der Funktionen:
Und schließlich wiederherstellen lassen (
-L
gibt die Liste erstellte Datei oben):InformationsquelleAutor der Antwort dezso