Daten einer DB in eine Neue kopieren.

Guten Tag,

Ich bin Anfänger mit dem Thema PostgreSQL und hoffe die Frage ist nicht allzu blöd gestellt. Zudem hoffe ich, ich bin im richtigen Forenteil. Konnte mich da nicht richtig entscheiden.

Ich habe über die Konsole mit

CREATE DATABASE newDB TEMPLATE master OWNER postgres;

Eine Datenbank erstellt, welche dank dem Template identisch zu einer älteren Datenbank ist.

Nun möchte ich die Daten der alten Datenbank (also alle Daten in den Tabellen) in die identischen Tabellen der neuen Datenbank kopieren.
Wie geht das? (Wegen mir auch mit PGadmin)
Oder muss man hier eine Kopie der Datenbank einfach mit einem anderen namen anlegen? Wie wäre das Möglich?
Die alte Datenbank soll für zugriffe noch bereit stehen aber sie soll nicht weiter mit Daten gespeist werden. Und die neue wird nachträglich angepasst. Daher das ganze Vorgehen.

Über ein wenig Hilfe wäre ich Dankbar. Bisher habe ich nur Informationen zum Kopieren von einzelnen Tabellen gefunden, da es sich hier aber um ca. 60 handelt ist das ein sehr hoher Aufwand und ich bin mir nicht sicher ob das bzgl. der Fremdschlüssel usw. so einfach funktioniert.

Grüße Frost

Wenn Du die als Template kopierst, hast dann die Daten auch drin. Wenn Du später die Daten von A nach B bekommen willst geht das am einfachsten via Dump&Restore. Andere Lösung wäre via FDW.

Wow mit so einer schnellen Antwort hätte ich nicht gerechnet, Danke.
Das Template ist ja leer. Es wird verwendet um mehrere Datenbanken anzulegen, welche identisch sind, aber mit unterschiedlichen Infos gespeist werden.
Kann man das mit Dump&Restore dann einfach so hinbekommen?

pg_dump alteDB > file

psql neueDB < file

Jupp. geht sogar via pipe: pg_dump … | psql …

Vielen Dank für die Hilfe, werd ich gleich mal versuchen.