Postgres-Export

Ein Befehl schreibt ein Projekt als Bundle aus, das Sie in Ihre eigene Postgres-Datenbank wiederherstellen: typisierte Tabellen, die aus Ihren Modellen erzeugt werden, Ihre veröffentlichten Inhalte und Links zum Herunterladen Ihrer Dateien.

Ein Befehl

foir export postgres schreibt ein Archiv in das aktuelle Verzeichnis. Geben Sie ihm einen Connection-String als Ziel, und die CLI wendet das Bundle von Ihrem eigenen Rechner aus mit psql an, ohne den String an Fóir zu senden. Das Bundle wird an Sie gestreamt und nicht auf unserer Seite gespeichert. Die Wiederherstellung erfordert Postgres 15 oder neuer.

Typisierte Tabellen und Fremdschlüssel

Jedes Modell, das Datensätze enthält, wird zu einer typisierten Tabelle, erzeugt aus seinem veröffentlichten Schema, mit Ihren Feldschlüsseln als Spalten in Snake-Case. Daneben gibt es Tabellen für Dateien, Übersetzungen pro Locale, mehrwertige Referenzen und Zugriffsfreigaben. Eine Referenz, die auf ein Modell verweist, wird zu einem Fremdschlüssel, der nach dem Laden der Daten angewendet wird. Eine, die auf mehrere Modelle verweisen darf, erhält keinen, weil ein einzelner Constraint nicht mehrere Tabellen benennen kann.

Veröffentlichte Inhalte, sofern Sie nicht mehr anfordern

Die typisierten Tabellen enthalten die veröffentlichte Version jedes Datensatzes. Entwürfe, ältere Versionen und unveröffentlichte Varianten bleiben außen vor, ebenso ein Datensatz, der nie veröffentlicht wurde. Ein Modell ohne Versionierung oder Veröffentlichung exportiert seine Datensätze, wie sie gespeichert sind. Fügen Sie --include-raw hinzu, und das Bundle erhält eine Tabelle, die jeden Datensatz so, wie er gespeichert ist, als JSON enthält.

Dateien als Download-Links

Das Bundle enthält die Dateien selbst nicht. Es listet für jede Datei, auf die Ihre exportierten Inhalte verweisen, einen zeitlich begrenzten Download-Link auf, mit einem Skript, das jede Datei unter den Pfad lädt, auf den der Inhalt zeigt. Sie erhalten die Originale, und Dateien, auf die nichts verweist, werden nicht aufgeführt. Jeder, der die Liste besitzt, kann herunterladen, bis die Links ablaufen, behandeln Sie sie also als Secret.

Die Verifizierungsdatei

Der Export gibt aus, was er nicht übertragen konnte: hängende Referenzen und Werte, die nicht in ihre Spalte passen würden, beide als NULL geschrieben. Er weigert sich, ein Bundle zu erzeugen, wenn die entladenen Zeilen von einer unabhängigen Zählung veröffentlichter Datensätze abweichen. In Ihrer wiederhergestellten Datenbank prüft validate.sql Zeilenanzahlen und Prüfsummen pro Spalte erneut. Nicht geprüft werden die Zugriffsregeln.

Details nachlesen

Der Export-Leitfaden führt durch das Ausführen des Befehls, den Inhalt des Bundles, die eigene Wiederherstellung und die Prüfung des Ergebnisses.