Chat with us, powered by LiveChat
Home > PostgreSQL Sicherungs- und Wiederherstellungslösungen

Bacula Enterprise ist direkt mit PostgreSQL integriert, um selbst in den anspruchsvollsten Produktionsumgebungen Backups und Wiederherstellungen zu ermöglichen, einschließlich Datenbanken mit hohen Transaktionszahlen und großen Multi-Datenbank-Clustern, die sich keine Service-Unterbrechungen während der Backup-Fenster leisten können.

Die PostgreSQL-Backup-Software wickelt den gesamten Backup- und Wiederherstellungszyklus Ihrer PostgreSQL-Cluster ohne Skripte und ohne Unterbrechung des Clusterbetriebs ab. Sie läuft als File Daemon Plugin auf dem Datenbank-Host und erfasst alles, was der Cluster für eine saubere Wiederherstellung benötigt, von Rollen und Tablespaces bis hin zu datenbankbezogenen Schemata und Erstellungsskripten.

Das PostgreSQL-Backup-Tool von Bacula unterstützt die Strategien Dump und PITR , um zwei unterschiedliche Wiederherstellungsszenarien abzudecken. Im Dump-Modus wird pg_dump im benutzerdefinierten oder einfachen Format über alle Datenbanken oder eine definierte Teilmenge ausgeführt, wobei die Filterung auf Objektebene sowohl zum Zeitpunkt der Sicherung als auch der Wiederherstellung verfügbar ist. Dies ist besonders nützlich, wenn Sie eine einzelne Tabelle oder ein einzelnes Schema wiederherstellen müssen, ohne den Rest der Datenbank anzugreifen.

Im PITR-Modus verwaltet das Plugin die WAL-Archivierung über vollständige, inkrementelle und differenzielle Auftragsebenen hinweg, so dass Sie jeden Cluster zu einem beliebigen Zeitpunkt wiederherstellen können und den Verlust stundenlanger Transaktionen durch versehentlichen Datenverlust, Beschädigung oder eine fehlgeschlagene Bereitstellung vermeiden.

In HA-Umgebungen mit mehreren Knoten, wie z.B. Patroni, können Dump-Backups über den Cluster-Endpunkt verbunden werden, unabhängig davon, welcher Knoten primär ist. PITR- und WAL-basierte Backups arbeiten jedoch auf Dateisystemebene auf dem aktiven primären Host. Nach einem Rollenwechsel müssen Sicherungsaufträge auf den neuen primären Rechner verweisen, um ein konsistentes WAL-Archiv zu erhalten.

Die wichtigsten Vorteile von Baculas PostgreSQL Backup Tool

Dual-Mode-Backup-Abdeckung

  • Dump- und PITR-Unterstützung – Sichern Sie jede PostgreSQL-Instanz mit logischen Dumps über pg_dump oder WAL-basierte Point-in-Time-Archivierung (PITR), wobei beide Modi gleichzeitig auf derselben Instanz ausgeführt werden können. PITR arbeitet auf Instanzebene, da WAL-Dateien für die gesamte PostgreSQL-Instanz und nicht für eine einzelne Datenbank erzeugt werden. Wenn Sie eine granulare Wiederherstellung auf Datenbankebene benötigen, unterstützt der Dump-Modus die selektive Wiederherstellung bis hinunter zu einer einzelnen Tabelle oder einem einzelnen Schema.
  • Kein Skripting erforderlich – Das PostgreSQL-Backup-Tool erkennt automatisch alle Datenbanken im Cluster und sichert automatisch die Konfiguration, Rollen, Tablespaces und Schemas, ohne dass ein manuelles Eingreifen erforderlich ist.
  • Online-Backup – Sichern Sie PostgreSQL-Cluster, während sie voll funktionsfähig bleiben, ohne dass auf jeder Backup-Ebene eine Ausfallzeit erforderlich ist.

Granulare Point-in-Time-Wiederherstellung (PITR)

  • Vollständiges Backup – Erfasst das gesamte Datenverzeichnis und alle während des Laufs erzeugten WAL-Dateien, die wiederum die Grundlage für alle nachfolgenden Wiederherstellungsvorgänge bilden.
  • Inkrementelles Backup – Archiviert WAL-Dateien, die seit dem letzten Job erzeugt wurden, und hält Backup-Fenster für Datenbanken mit hoher Aktivität eng.
  • Differentielles Backup – Erfasst Datendateien, die seit der letzten Vollsicherung geändert wurden, sowie aktuelle WAL-Dateien und verkürzt die Wiederherstellungszeit ohne den Speicher-Overhead einer neuen Vollsicherung.
  • Präzise Wiederherstellungsziele – Spielen Sie eine beliebige WAL-Kette ab, um eine Instanz bis zu einer exakten Transaktion wiederherzustellen, und nicht nur bis zum letzten geplanten Backup.
  • Wiederherstellung an einem anderen Ort – Stellen Sie jede Datenbank auf einem anderen Server oder in einem anderen Verzeichnis wieder her, um sie zu testen, zu migrieren oder im Notfall wiederherzustellen, ohne die Produktionsumgebung zu berühren.

Umfassende Wiederherstellungsoptionen

  • Keine Abdeckungslücken – Führen Sie inkrementelle Aufträge über die Direktive Maximum Concurrent Jobs gleichzeitig mit vollständigen und differenziellen Aufträgen aus, so dass keine Änderungen zwischen die Backup-Fenster fallen.
  • Kopier- und Migrationskompatibilität – Verschieben Sie Backup-Daten zwischen Volumes mit dem nativen Kopier- und Migrations-Framework von Bacula, ohne dass der File Daemon beteiligt ist.
  • Kein temporärer Festplattenspeicher erforderlich – Die Daten werden auf jeder Backup-Ebene direkt vom Cluster an den Storage Daemon übertragen, ohne dass eine Zwischenlagerung erfolgt.

Das PostgreSQL-Backup-Tool ist für 32-Bit- und 64-Bit-Linux verfügbar und unterstützt alle offiziell gepflegten PostgreSQL-Releases ab Version 8.4 aufwärts.

PostgreSQL Backup Software: Detaillierte Funktionszusammenfassung

Die Wahl der richtigen Sicherungsstrategie hängt davon ab, ob Sie einzelne Objekte aus einem logischen Dump wiederherstellen oder einen ganzen Cluster zu einem bestimmten Zeitpunkt wiederherstellen müssen. Die folgende Tabelle enthält die wichtigsten funktionalen Unterschiede zwischen den unterstützten Modi dieser PostgreSQL-Sicherungslösung.

Die Modi Custom und Dump erzeugen kompakte, portable SQL-Dateien, die sich für selektive Wiederherstellungen und versionsübergreifende Migrationen eignen. PITR erzeugt größere Sicherungen, da es das gesamte Datenverzeichnis sowie die WAL-Dateien erfasst, bietet jedoch schnellere Wiederherstellungsgeschwindigkeiten und die Möglichkeit, zu jedem beliebigen Zeitpunkt wiederherzustellen. Beide Strategien können gleichzeitig auf derselben PostgreSQL-Instanz ausgeführt werden.

*In der Tabelle entspricht das benutzerdefinierte Format dem benutzerdefinierten Dump-Format von pg_dump und das Dump-Format des PostgreSQL-Moduls von Bacula entspricht dem einfachen Format von pg_dump.

Benutzerdefiniert Dump PITR
Ein einzelnes Objekt wiederherstellen (Tabelle, Schema) Ja Nein Nein
Geschwindigkeit der Datensicherung Langsam Langsam Schnell
Wiederherstellungsgeschwindigkeit Langsam Sehr langsam Schnell
Backup-Größe Klein Klein Groß
Zeitnahe Wiederherstellung Nein Nein Ja
Inkrementelle und differenzierte Unterstützung Nein Nein Ja
Parallele Wiederherstellung Ja Nein Nein
Online-Sicherung Ja Ja Ja
Konsistente Sicherung Ja Ja Ja
Zurücksetzen auf die vorherige PostgreSQL-Hauptversion Nein Ja Nein
Wiederherstellung auf eine neuere PostgreSQL-Hauptversion Ja Ja Nein

Robuste Backup-Funktionen

  • Vollständige Sicherung – Erfasst das gesamte Datenverzeichnis und alle während des Auftrags erzeugten WAL-Dateien und bildet die Grundlage für alle PITR-Wiederherstellungsketten.
  • Inkrementelle Sicherung – Erzwingt einen WAL-Segmentwechsel und archiviert alle WAL-Dateien, die seit dem letzten Auftrag erzeugt wurden. Dadurch werden die Backup-Fenster auf PostgreSQL-Instanzen mit hoher Aktivität minimiert.
  • Differentielles Backup – Erfasst Datendateien, die seit dem letzten vollständigen Backup geändert wurden, sowie alle aktuellen WAL-Dateien und sorgt so für einen Ausgleich zwischen Speichereffizienz und schnellerer Auflösung der Wiederherstellungskette.
  • Dump-basierte Sicherung – Führt pg_dump im benutzerdefinierten oder einfachen Format über alle Datenbanken oder eine definierte Teilmenge aus, wobei eine Filterung auf Objektebene zum Zeitpunkt der Sicherung möglich ist.
  • Online-Backup – Alle Backup-Typen werden gegen eine Live-PostgreSQL-Instanz ausgeführt, ohne dass Ausfallzeiten oder eine Unterbrechung des Clusters erforderlich sind.
  • Automatische Cluster-Erkennung – Das Plugin erkennt automatisch alle Datenbanken im Cluster und erfasst Konfiguration, Rollen, Tablespaces, Schemas und Erstellungsskripts ohne manuelle Konfiguration.
  • Kein temporärer Festplattenspeicher erforderlich – Massendaten werden auf jeder Backup-Ebene direkt vom Datenbank-Host an den Storage Daemon übertragen.

Wiederherstellungs-Fähigkeiten

  • Point-in-Time Restore (PITR) – Spielt eine beliebige WAL-Kette ab, um eine PostgreSQL-Instanz auf eine exakte Transaktion wiederherzustellen, unabhängig von geplanten Sicherungsintervallen.
  • Single Object Restore – Stellt einzelne Tabellen, Schemata oder Indizes direkt aus Dumps im benutzerdefinierten Format mit pg_restore wieder her, ohne den Rest der Datenbank zu berühren.
  • Wiederherstellung an einem anderen Ort – Stellt eine beliebige Datenbank auf einem anderen Server oder in einem anderen lokalen Verzeichnis für Migrationen, Tests oder Disaster Recovery wieder her, ohne die Produktionsumgebung zu beeinträchtigen.
  • Parallele Wiederherstellung – Benutzerdefinierte Formatdumps unterstützen gleichzeitige Wiederherstellungsaufträge über pg_restore, was die Wiederherstellungszeit auf Multicore-Systemen verkürzt.
  • Versionsübergreifende Wiederherstellung – Benutzerdefinierte und einfache Dump-Formate unterstützen die Wiederherstellung auf neuere Hauptversionen von PostgreSQL; einfache Dumps unterstützen die Wiederherstellung auf frühere Hauptversionen.
  • Granulare Wiederherstellung von Rollen und Schemas – Rollen, Benutzer und Datenbankschemas können unabhängig voneinander über roles.sql und schema.sql wiederhergestellt werden, wobei eine selektive Bearbeitung über psql vor dem Laden unterstützt wird.

Operative Funktionen

  • Überprüfung des Datenbankzugriffs – Der Befehl estimate fragt das PostgreSQL-Plugin ab, um die Konnektivität des Clusters zu überprüfen und alle erkannten Datenbanken aufzulisten, bevor ein Sicherungsauftrag ausgeführt wird.
  • Selektives Datenbank-Targeting – Der Datenbank-Parameter akzeptiert Wildcard-Strings, so dass das Plugin nur Datenbanken sichern kann, die einem definierten Muster entsprechen, ohne die Auftragskonfiguration zu ändern.
  • Unterstützung von Service-Verbindungsdateien – PostgreSQL-Verbindungsparameter können in einen benannten pg_service-Eintrag abstrahiert werden. Dadurch kann das Plugin eine Verbindung zu entfernten Instanzen herstellen, ohne Host, Port oder Anmeldedaten direkt in das FileSet einzubetten.
  • Timeout-Kontrolle – Ein konfigurierbarer Timeout-Parameter legt die maximale Wartezeit in Sekunden für jeden an PostgreSQL gesendeten Befehl fest, wobei der Standardwert 60 Sekunden beträgt. Setzen Sie abort_on_error, um den Auftrag bei einem Verbindungsfehler sofort zu beenden, anstatt ihn unvollständig laufen zu lassen.
  • Anleitung zur Deduplizierung – PostgreSQL implementiert seine Backup-Routinen nicht im Hinblick auf die Deduplizierung. Wenn Sie den CLUSTER-Befehl vor dem Backup ausführen, werden die Tabellendaten physisch nach Indizes neu geordnet, wodurch die Deduplizierungsrate auf Kosten einer exklusiven Tabellensperre und eines erheblichen CPU- und I/O-Overheads verbessert wird.

Verwaltung und Überwachung

  • Web Interface Management (BWeb) – Konfigurieren und überwachen Sie PostgreSQL-Sicherungsaufträge über die grafische BWeb-Konsole von Bacula, ohne direkt mit Konfigurationsdateien zu interagieren.
  • Befehlszeilenkontrolle – Verwenden Sie die bconsole für das Auslösen von Aufträgen, das Durchsuchen von Katalogen, Wiederherstellungsoperationen und die skriptfähige Automatisierung aller PostgreSQL-Sicherungsaufträge.
  • Bekannte Einschränkungen – dump_opt kann nicht verwendet werden, um entfernte PostgreSQL-Server zu sichern; verwenden Sie stattdessen PGSERVICE. Die Wiederherstellung von template1, postgres oder einer Datenbank mit aktiven Verbindungen erfordert, dass diese Verbindungen zuerst beendet werden. Die Wiederherstellung langer WAL-Ketten auf hochaktiven Clustern verlängert die Wiederherstellungsvorgänge mit PITR erheblich.

Plattform- und Versionsunterstützung

Die Bacula Enterprise PostgreSQL Backup-Lösung unterstützt die folgenden Konfigurationen:

  • Alle offiziell gepflegten PostgreSQL-Versionen ab Version 8.4 aufwärts
  • Linux 32-Bit
  • Linux 64-Bit

Sicherheit in jedes PostgreSQL-Backup integriert

Bacula Enterprise wird von Verteidigungsorganisationen, Regierungsbehörden und Finanzinstituten zum Schutz ihrer sensiblen PostgreSQL-Umgebungen eingesetzt.

Die Sicherheit von Bacula beginnt auf der Ebene der Architektur. Backup-Clients haben keine Kenntnis von den Speicherzielen und verfügen über keine Zugangsdaten. Das bedeutet, dass ein kompromittierter Datenbank-Host keine Backup-Daten lesen, überschreiben, ändern oder löschen kann. Dieser Schutz ist in das Protokoll selbst integriert und kann nicht über eine Konfigurationseinstellung umgeschaltet werden.

Schutz vor Ransomware und Malware

  • Unveränderliche Disk-Volumes – Backup-Volumes können auf unveränderlich gesetzt werden, was jegliche Änderung oder Löschung nach dem Schreiben verhindert, auch durch privilegierte Benutzer.
  • Data Poisoning Detection – Identifiziert automatisch beschädigte oder manipulierte Daten, bevor sie sich in der Backup-Kette verbreiten.
  • Erweiterte Ransomware-Erkennung – BGuardian überwacht Backup-Aktivitäten auf verdächtige Muster und löst Alarm aus, bevor sich der Schaden ausbreitet.
  • Silent Data Corruption Detection – Überprüft die Integrität der gesicherten Daten unabhängig vom Quellsystem.

Verschlüsselung und Authentifizierung

  • AES-Verschlüsselung – Pro Client konfigurierbare Datenverschlüsselung mit AES 128, AES 192 oder AES 256, angewandt auf Volume-Ebene.
  • TLS für den gesamten Netzwerkverkehr – Automatische TLS-Verschlüsselung über alle Kommunikationskanäle der Komponenten mit CRAM-MD5-Passwortauthentifizierung zwischen Daemons.
  • Multi-Faktor-Authentifizierung – MFA- und OTP-Authentifizierung mit biometrischer Smartphone-Unterstützung für den BWeb-Zugang.
  • Active Directory- und LDAP-Integration – Zentralisierte Zugriffskontrolle, die direkt mit Ihrer bestehenden Identitätsmanagement-Infrastruktur verbunden ist.

Konformität und Auditierbarkeit

  • FIPS 140-3-konform – Erfüllt die von Behörden und Verteidigungseinrichtungen geforderten kryptografischen Standards.
  • SHA256- und SHA512-Dateisignaturen – Kryptografische Überprüfung jeder gesicherten Datei mit Tripwire-ähnlichem Katalogvergleich zur Erkennung von Einbrüchen.
  • SIEM-Integration – Sicherheitsereignisse fließen direkt in Ihre bestehende Security Information and Event Management-Plattform ein.
  • Härtungsberichte – Härtungsberichte für jedes System, auf dem Bacula läuft, zeigen unsichere Konfigurationen auf, bevor sie zu Sicherheitslücken werden.

Zentrale Enterprise-Funktionen für jede Bacula-Anwendung

Das PostgreSQL-Backup-Tool ist Teil der einheitlichen Backup-Plattform von Bacula Enterprise. Alle unten aufgeführten Funktionen sind in allen Bacula-Installationen verfügbar, unabhängig von der jeweiligen Umgebung.

Speicherinfrastruktur & Effizienz

Bacula Enterprise gibt Administratoren die direkte Kontrolle über die Speicherkosten durch Datenreduzierung und flexibles Ziel-Routing:

  • Deduplizierung auf Blockebene – Jeder Datenblock, der im Backup-Katalog mehr als einmal vorkommt, wird nur einmal auf den Speicher geschrieben, so dass die Redundanz bereits an der Quelle und nicht erst im Nachhinein beseitigt wird.
  • Adaptive Komprimierung – Die Komprimierungsalgorithmen sind pro Auftrag konfigurierbar, so dass CPU-Overhead und Speicherplatzeinsparungen je nach Datentyp und verfügbaren Ressourcen gegeneinander abgewogen werden können.
  • Mehrere Speicherzieltypen – Backups schreiben auf lokale Festplatten, NAS, SAN, Bandbibliotheken, Cloud-Objektspeicher wie S3, Azure und Google Cloud oder eine beliebige Kombination innerhalb einer einzigen Richtlinie.
  • S3-kompatibler Objektspeicher – Verbindet sich mit jedem S3-kompatiblen Anbieter für eine langfristige Speicherung ohne Herstellerbindung.
  • Tiered Storage Workflows – Backup-Daten werden mit zunehmendem Alter automatisch zwischen den Speicherebenen verschoben, so dass Wiederherstellungspunkte, auf die häufig zugegriffen wird, auf schnellem Speicher verbleiben, während ältere Daten auf kostengünstigere Ziele verlagert werden.
  • Inkrementell für immer – Nach einem ersten vollständigen Backup wird bei jedem nachfolgenden Auftrag nur das erfasst, was sich geändert hat. Wiederkehrende vollständige Backups werden überflüssig.
  • Bandbreitenschonende Übertragungen – Nur geänderte Daten werden zwischen den Backup-Läufen über das Netzwerk übertragen, so dass die Belastung der Produktionsinfrastruktur auf ein Minimum reduziert wird.

Datenschutz & Compliance

Sicherheit und die Einhaltung gesetzlicher Vorschriften sind in jeder Schicht der Plattform integriert, vom Datentransport und der Speicherverschlüsselung bis hin zur Zugriffskontrolle und Audit-Protokollierung.

  • Ende-zu-Ende-Verschlüsselung – Die AES-256-Verschlüsselung deckt den gesamten Datenpfad vom Quellclient bis zum endgültigen Speicherort ab, wobei die Schlüsselverwaltung entsprechend den Sicherheitsrichtlinien des Unternehmens konfiguriert werden kann.
  • Unveränderliche Sicherungskopien – WORM-kompatibler Speicher sperrt die Sicherungsdaten gegen jede Änderung oder Löschung, sobald sie geschrieben wurden, so dass Sie einen Wiederherstellungspunkt haben, den Ransomware und Insider-Bedrohungen nicht erreichen können.
  • Granulare Zugriffskontrollen – Benutzerrechte beziehen sich auf bestimmte Aufträge, Wiederherstellungsworkflows und Verwaltungsfunktionen, so dass Administratoren nur auf das zugreifen können, was ihre Rolle erfordert.
  • Vollständige Aktivitätskontrolle – Jede Sicherung, Wiederherstellung und Konfigurationsänderung wird mit Benutzeridentität und Zeitstempel protokolliert. Compliance- und Sicherheitsteams erhalten einen vollständigen, lückenlosen Prüfpfad.
  • Unterstützung gesetzlicher Rahmenbedingungen – Die Plattformkontrollen entsprechen den Anforderungen von GDPR, HIPAA und SOC 2 durch eine Kombination aus Verschlüsselung, konfigurierbaren Aufbewahrungsrichtlinien und detaillierten Audit-Protokollen.
  • Datenschutzfreundliche Architekturen – Die Zero-Knowledge-Bereitstellungsoptionen ermöglichen den Betrieb der Backup-Infrastruktur, ohne dass die Administratoren Einblick in die geschützten Daten selbst erhalten.

Unternehmensmanagement und Kontrolle

Zwei sich ergänzende Schnittstellen und eine vollständige Suite von Verwaltungstools bieten Transparenz und Kontrolle über alle Backup-Vorgänge:

  • Duale Schnittstelle – BWeb bietet eine grafische Konsole für die tägliche Verwaltung und Überwachung von Aufträgen, während bconsole den Anwendern volle Befehlszeilenkontrolle für Skripting, Automatisierung und erweiterte Konfiguration bietet.
  • Unbegrenzte Skalierbarkeit – Dieselbe Plattformarchitektur verwaltet Umgebungen von einer Handvoll Servern bis hin zu Tausenden von Installationen, alles unter einer einzigen Verwaltungsebene.
  • Tenant Isolation – MSPs und große Unternehmen partitionieren die Backup-Umgebung in unabhängig verwaltete Einheiten, jede mit eigener Konfiguration, eigenen Richtlinien und Zugriffskontrollen.
  • Automatische Ressourcenerkennung – Die Plattform scannt die Infrastruktur, um Backup-Ziele automatisch zu identifizieren und zu katalogisieren, so dass die Schutzabdeckung auch bei veränderten Umgebungen aktuell bleibt.
  • Umfassendes Berichtswesen – Geplante Berichte zu Auftragsergebnissen, Kapazitätstrends, Compliance-Status und Betriebsleistung werden in einem festgelegten Rhythmus erstellt.
  • Externe Systemintegration – Lässt sich mit Überwachungstools, IT-Ticket-Systemen und Verzeichnisdiensten wie LDAP und Active Directory verbinden und fügt sich ohne kundenspezifische Entwicklung in bestehende Arbeitsabläufe ein.

Hervorragende hybride Infrastruktur

Physische Server, virtuelle Maschinen, Container und Cloud-Infrastrukturen fallen alle unter eine einzige, einheitliche Backup-Strategie:

  • Multi-Plattform-Virtualisierung – Native Integration für VMware vSphere, Hyper-V, KVM, Red Hat Virtualization, Xen, Azure VM, Proxmox und Nutanix AHV mit konsistenter Richtlinienanwendung über alle Plattformen hinweg.
  • Physische und virtuelle Konvergenz – Physische Server, Workstations und virtuelle Maschinen werden über dieselbe Verwaltungsoberfläche mit einheitlichen Backup-Richtlinien geschützt.
  • Container- und Cloud-Native-Unterstützung – Vollständiger Schutz für Docker-, Kubernetes- und OpenShift-Umgebungen mit persistenten Volume-Backups und anwendungskonsistenten Snapshots.
  • Integration von Multi-Cloud-Speichern – Native Unterstützung für öffentliche, private und hybride Cloud-Speicher, einschließlich S3, S3-IA, Azure, Google Cloud, Oracle Cloud und Glacier, mit Minimal Restore Cost-Funktionalität.
  • Integration von Datenbanken und Anwendungen – Hot-Backup für Oracle, SQL Server, MySQL, PostgreSQL, SAP HANA und andere unternehmenskritische Anwendungen mit vollständiger Transaktionskonsistenz.

Wirtschaftliche Vorteile

Die Lizenzierung basiert auf der Größe der Umgebung, nicht auf dem Datenvolumen. PostgreSQL-Datenbanken können wachsen, ohne höhere Lizenzkosten auszulösen:

  • Volumenunabhängige Lizenzierung – Wachsende Backup-Kapazität führt nicht zu höheren Lizenzgebühren, so dass die Kosten für die Datensicherung auch bei wachsendem Datenvolumen gleich bleiben.
  • Vorhersehbare Kostenstruktur – Ein festes Preismodell ermöglicht es Teams, Infrastrukturbudgets zu planen, ohne variable Kosten zu berücksichtigen, die durch Speicherwachstum oder Änderungen der Arbeitslast entstehen.
  • Workload-unabhängige Preisgestaltung – Datenbankgrößen, Serveranzahl und Speichervolumen haben keinen Einfluss auf die Lizenzkosten.
  • Große Kostenvorteile – Unternehmen, die umfangreiche oder schnell wachsende PostgreSQL-Datenbanken schützen, erhalten zunehmend signifikante wirtschaftliche Vorteile gegenüber Wettbewerbern mit Kapazitätspreisen.
  • Wirtschaftliche Vorteile für Service Provider – MSPs übernehmen Kunden mit großen oder schnell wachsenden Datenbeständen, ohne den Anstieg der Lizenzkosten auf sich nehmen zu müssen, der bei Preismodellen pro Terabyte die Margen schmälert.

Wiederherstellung & Business Continuity

Für jedes Wiederherstellungsszenario gibt es einen definierten Pfad, von der Wiederherstellung einer einzelnen Datei bis hin zum kompletten Wiederaufbau eines Standorts:

  • Bare Metal Restore auf Systemebene – Stellt einen kompletten Server von Grund auf wieder her, einschließlich Betriebssystem, Anwendungen, Konfiguration und Daten, ohne dass eine vorherige manuelle Installation erforderlich ist.
  • Plattformübergreifende Datenverschiebung – Backup-Daten können auf einem anderen Betriebssystem als der Quelle wiederhergestellt werden, was Teams Optionen bietet, wenn vergleichbare Hardware nicht verfügbar ist oder eine Migration im Gange ist.
  • Geografische Backup-Replikation – Backup-Sets werden an geografisch getrennte Speicherorte kopiert, so dass bei einem standortweiten Ausfall die Wiederherstellungspunkte nicht mitgerissen werden.
  • Häufige Backup-Planung – Die Backup-Intervalle können auf Minuten reduziert werden, wodurch das Zeitfenster für einen möglichen Datenverlust deutlich kleiner wird als bei herkömmlichen stündlichen oder nächtlichen Zeitplänen.
  • Automatisierte Wiederherstellungsvalidierung – Die Wiederherstellbarkeit wird durch automatische Tests bestätigt, ohne dass ein Administrator beteiligt ist oder ein separater Validierungsprozess erforderlich ist.

PostgreSQL-Sicherungsarten

Es gibt zwei Hauptmethoden, um PostgreSQL-Datenbanken mit unserem Tool zu sichern: Snapshots auf Dateisystemebene (physisch) oder SQL-Dumps (logisch).

Physischer Typ

Backups auf Dateisystemebene oder physische Backups sind im Wesentlichen Schnappschüsse aller Dateien in der Datenbank. Die Sicherung dieser Dateien ist nicht so einfach, wie es scheinen mag, denn sie werden in der Regel ständig neu geschrieben und geändert. Die Sicherung von PostgreSQL-Datenbanken stützt sich auf zwei wichtige Methoden: Kontinuität bei der Archivierung und Point-in-Time-Recovery. Beide sind darauf ausgelegt, sich gegenseitig zu ergänzen. Die kontinuierliche Archivierung liefert die WAL-Kette, und die Point-in-Time Recovery (PITR) nutzt sie, um die Instanz zu einem beliebigen Zeitpunkt wiederherzustellen.

Um Konsistenz zu gewährleisten, müssen Backups bestätigen, dass der Backup-Prozess entweder die gesamte Datenbank kopiert oder sie vollständig unverändert lässt. Aus diesem Grund verwendet PostgreSQL die Write-Ahead-Logging-Technologie. WAL-Segmente sind genau die Dateien, die während des laufenden Archivierungsprozesses gesichert werden. Die in diesen Dateien gespeicherten Informationen ermöglichen eine einfachere Wiederherstellung nach einem Absturz und eine bessere Datenkonsistenz.

Es ist nicht ungewöhnlich, dass Datenbanken während eines Dateisystem-Backups Änderungen erfahren. Einige dieser Änderungen können jedoch Teile eines Backups beschädigen oder irreparabel machen. Um dies zu verhindern, bietet PostgreSQL eine Low-Level-API für den physischen Backup-Prozess. Die Verwendung von pg_start_backup() und pg_stop_backup() vor und nach dem Prozess verhindert, dass während des Backups gefährliche Änderungen an der Datenbank vorgenommen werden. Alle WAL-Segmente, die zwischen diesen beiden Befehlen erzeugt werden, müssen dennoch erfasst werden. Der Snapshot auf Dateisystemebene zusammen mit diesen WAL-Segmenten wird allgemein als Basis-Backup bezeichnet.

Logischer Typ

Ein SQL-Dump oder logisches Backup funktioniert anders als ein physisches Backup. Er verwendet PostgreSQL-Backup-Befehle, um die Grundstruktur der Datenbank wiederherzustellen und sie mit Daten zu füllen. Ein SQL-Dump repräsentiert konsistent den Zustand der Datenbank zu einem bestimmten Zeitpunkt, da der Dump-Prozess wie jede andere Datenbanksitzung abläuft.

Der Prozess läuft folgendermaßen ab: Die Software liest alle verfügbaren Tabellen durch und holt dann alle Zeilen, wobei die Reihenfolge beibehalten wird, die erforderlich ist, um alles genau so wiederherzustellen, wie es gesichert wurde, einschließlich aller Verbindungen und Abhängigkeiten.

Eine Sache, die Sie bei SQL-Dumps beachten müssen, ist, dass Daten aus verschiedenen Tabellen unterschiedliche Zeitstempel tragen können. Eine Tabelle kann zum Zeitstempel A und eine andere zum Zeitstempel B erfasst worden sein. Dies ist zu beachten, wenn Ihre Datenbank Regeln darüber aufstellt, wie sich Zeilen und Tabellen zueinander verhalten sollen.

 

Download TestversionPostgreSQL Whitepaper herunterladen

Häufig gestellte Fragen

Was ist PostgreSQL?

PostgreSQL ist ein quelloffenes relationales Datenbankmanagementsystem, das seit über 35 Jahren aktiv entwickelt wird. Es ist eine der meistgenutzten Datenbanken der Welt und wird von Unternehmen jeder Größe wegen seiner Zuverlässigkeit, Leistung und Erweiterbarkeit geschätzt. Sie unterstützt sowohl SQL- als auch JSON-Abfragen und eignet sich für alles, von kleinen Webanwendungen bis hin zu großen Unternehmensanwendungen.

Ist pg_dump eine echte PostgreSQL-Backup-Lösung?

pg_dump ist ein Datenexport-Tool, keine vollständige Backup-Lösung. Es erfasst keine WAL-Dateien, was eine Point-in-Time-Wiederherstellung allein mit einem Dump unmöglich macht. Außerdem schließt es globale Objekte wie Rollen und Tablespaces aus, es sei denn, Sie führen pg_dumpall separat aus. Für Produktionsumgebungen eignet sich pg_dump am besten als Teil einer umfassenderen Strategie, die die WAL-Archivierung und die automatische Planung einschließt, was genau das ist, was das PostgreSQL-Backup-Tool von Bacula automatisch erledigt.

Wenn ich eine Replikation habe, brauche ich dann noch PostgreSQL-Backups?

Ja. Die Replikation kopiert jede Änderung auf Ihre Standby-Server, auch versehentliche Änderungen. Wenn ein Entwickler eine Tabelle in der Produktion löscht, wird diese Löschung sofort auf alle Replikate übertragen. Mit PITR-Backups können Sie genau den Zeitpunkt vor dem Fehler wiederherstellen. Replikation und Backups lösen unterschiedliche Probleme und sollten beide Teil Ihrer Wiederherstellungsstrategie sein.

Wie kann ich PostgreSQL-Backups am besten automatisieren?

Der zuverlässigste Ansatz für Produktionsumgebungen kombiniert geplante vollständige Backups mit kontinuierlicher WAL-Archivierung. Bacula Enterprise erledigt beides automatisch. Vollständige, inkrementelle und differenzielle Jobs laufen nach einem festgelegten Zeitplan, die WAL-Archivierung läuft im Hintergrund und alles wird zentral verwaltet, ohne dass Sie eigene Skripte schreiben müssen.

Wie funktioniert die Point-in-Time-Wiederherstellung von PostgreSQL?

PostgreSQL zeichnet jede Datenbankänderung im Write-Ahead Log auf, bevor sie auf die Datendateien angewendet wird. PITR funktioniert, indem es ein Basis-Backup wiederherstellt und dann die WAL-Dateien bis zu dem Zeitpunkt abspielt, an dem Sie sie wiederherstellen müssen. Auf diese Weise können Sie versehentliche Datenverluste, gelöschte Tabellen oder fehlgeschlagene Implementierungen bis zu einem genauen Zeitpunkt wiederherstellen und nicht nur bis zum letzten geplanten Backup.

Welches PostgreSQL Backup-Tool benötige ich für eine Unternehmensumgebung?

Unternehmensweite PostgreSQL-Umgebungen benötigen Online-Backups ohne Ausfallzeiten, PITR, zentrale Verwaltung über mehrere Cluster hinweg, Verschlüsselung und Integration in die übrige Infrastruktur. Das PostgreSQL-Plugin von Bacula Enterprise deckt all diese Anforderungen in einer einzigen Plattform ab, die auch virtuelle Maschinen, Container, Cloud-Umgebungen und andere Datenbanken schützt.