Rettung der postgreSQ Datenbank von paperless-ngx

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.623
Punkte für Reaktionen
761
Punkte
154
In einem anderen Thread wurde geschrieben, dass Hyper Backup die Container nicht sichert. Also den Inhalt der Container, sondern nur wie sie erstellt werden. Das würde ja heißen, dass deine DB auch weg ist....
 

Kenji

Benutzer
Mitglied seit
09. Feb 2024
Beiträge
43
Punkte für Reaktionen
5
Punkte
58
Bye the way, was spricht eigentlich gegen Snapshot des Docker Containers inkl. archiv/consume? Sollte doch beim WIederherstellen kein Probleme geben?
 

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.066
Punkte für Reaktionen
916
Punkte
204
Ich habe bisher Paperless-ngx ausschließlich so wiederhergestellt, dass ich eine Hyper Backup Sicherung zurückgespielt habe (für die Daten in den Containern) und danach mit meiner yml und env die Container im Container Manager neu habe anlegen lassen.
 

plang.pl

Benutzer
Contributor
Sehr erfahren
Maintainer
Mitglied seit
28. Okt 2020
Beiträge
14.260
Punkte für Reaktionen
4.957
Punkte
519

realRSN

Benutzer
Mitglied seit
24. Apr 2024
Beiträge
9
Punkte für Reaktionen
0
Punkte
1
So! Ich habe jetzt eine Woche gewartet bei meine unveränderlichen Schnappschüsse abgelaufen waren und heute den ganzen Tag das Hype Backup zurückgespielt. In der Sicherungsart "Gesamtes System" speichert Hype Backup wohl wirklich alles. Also auch die Container und deren Inhalte. Ich habe meine Datenbank von letzter Woche also zurück.

Da das Rücksichern aber den ganzen Tag dauerte würde ich beim nächsten Schritt gerne etwas vorsichtiger sein. Wenn ich jetzt den Ordner /var/lib/postresql/data mounte, klappt das dann? Weil @alexhell Du schriebst:

"WICHTIG: Wenn du das Backup wieder herstellst, dann mounten nicht den Ordner wie du es eben gemacht hast. Dann sind deine Daten weg."

Bleibt das also die einzige Option die Daten im Container zu lassen, nie ein Update einzuspielen und den Container mit Hype Backup zu sichern? Oder kann ich die Datenbank doch noch irgendwie mounten?
 

alexhell

Benutzer
Sehr erfahren
Mitglied seit
13. Mai 2021
Beiträge
2.623
Punkte für Reaktionen
761
Punkte
154
Du musst einen anderen Ordner mounten. Also als Beispiel host: /volume1/Docker/paperless/DB_backup und im Container/backup. Dann könntest du ins Terminal vom PSQL Container und mit pg_dump dann ein DB Dump in /backup erstellen. Dann den Container beenden/löschen und neu machen mit den richtigen Mounts und die DB mit pg_restore wieder herstellen.

Edit: wenn du direkt den Ordner für die DB mountest, dann ist der Ordner im Container leer.
 

realRSN

Benutzer
Mitglied seit
24. Apr 2024
Beiträge
9
Punkte für Reaktionen
0
Punkte
1
Das hast funktioniert. Danke!

Da jetzt alles wieder läuft, meine Learnings:

1. Unveränderliche Snappshots verhindern, dass man das Gesamtsystem zurücksetzen kann.
2. Hyper Backup sichert im Gesamtsystem auch die Container mit Inhalt
3. Die Container (nicht Image) Exportfunktion sicher auch den Container und die DB. Ich hatte beim Export aber nur „Containereinstellungen“ und nicht „Containereinstellungen und Inhalt“ ausgewählt. Daher war in meinem exportierten Container auch keine DB.
4. Ich hatte Postgres falsch aufgesetzt, weil ich die DB nicht gemountet hatte. Es empfiehlt sich /var/lib/postgresql/data zu mounten und zu sichern.
5. Einen Datenbank dump mit pg_dump und pg_restore zu sichern und ggf. zurück zu spielen ist sehr sinnvoll.
6. In diesem Forum bekommt man extrem schnell, sehr kompetente Hilfe.
 
Zuletzt bearbeitet von einem Moderator:

Monacum

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
03. Jan 2022
Beiträge
2.066
Punkte für Reaktionen
916
Punkte
204
  • Like
Reaktionen: plang.pl


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat