Meine Schritte:
- Führen Sie das Finale
pg_dumpall
auf einem Server ausprod-server-old
prod-server-old
Für immer herunterfahren .- Kopieren Sie die Ausgabe auf einen anderen Server (
prod-server-new
) - Stellen Sie dort die Datenbank wieder her.
- Der gesamte Verkehr geht
prod-server-new
jetzt
Wie kann ich Änderungen an der Datenbank während pg_dumpall
(zwischen Schritt 1 und Schritt 2) vermeiden, damit Änderungen während dieser Zeit nicht verloren gehen können?
In meinem Fall ist es 100% OK, eine kleine Ausfallzeit zu haben.
Es gibt mehrere Datenbanken im "Cluster" (übrigens mag ich das Wort "Cluster" nicht. Ich denke, die meisten Leute denken, ein "Cluster" ist eine Gruppe von mehreren Computern, aber in diesem Fall bedeutet dies einen Postgres-Server, der hält mehrere Datenbanken).
Meine Frage wurde als mögliches Duplikat für "Postgres-Datenbank vorübergehend schreibgeschützt machen (zum Durchführen von Volume-Snapshots)" markiert. Ich denke nicht, dass es ein Duplikat ist, da es in meinem Fall anders ist, da ich nicht nach einem temporären schreibgeschützten Zustand frage.