Einleitung
Das moderne Informationssystem stellt viele Anforderungen an die Wirksamkeit und Stabilität der Arbeit. Eine dieser Fehlertoleranzen bietet Schutz vor Angriffen auf Integrität und Verfügbarkeit, technischen Problemen und anderen Vorfällen, die ausreichend Daten beschädigen können. Für die Verwendung von Tools und Dienstprogrammen müssen wir den Einsatzbereich bestimmen. In dieser Anleitung werden wir die Reservierung und Sicherung von Daten im DBMS berücksichtigen PostgreSQL über das proprietäre und Open-Source-Dienstprogramm.
Best-Practice-
Wir können Datenbanken mit unterschiedlicher Größe, Struktur und Volumen haben, aber wir müssen eine vollständige Integritätssicherung durchführen und diese ordnungsgemäß wiederherstellen. Das erste Dienstprogramm, das wir nutzen können pg_dump und psql or pg_restore. Es verwendet den Mechanismus zum Lesen aktueller Datenbanken und zum Konvertieren in den Befehl in der Textdatei. Daher geben wir für die Eingabe im Dienstprogramm DB an, für die Ausgabe erhalten wir eine Textdatei.
Diese Methode hat mehrere Vorteile: Versionskonsistenz, Einfachheit beim Exportschritt und es sind keine Privilegien im System erforderlich. Um diesen Befehlstyp der Sicherung zu verwenden, müssen wir zunächst überprüfen, ob Datenbanken vorhanden sind, und das benötigte Objekt auswählen:
\l
Stellen wir sicher, wie sehen die Daten aus? Geben Sie den folgenden Befehl ein:
SELECT * FROM customers;
Wir haben einen Testdatensatz in der Datenbank mit theoretischen Benutzerdaten. Wir verwenden das Dienstprogramm pg_dump mit der Option: -U zur Ermittlung des Benutzers des DBMS, -d Datenbank identifizieren und für die Fernverwaltung verwenden können -h und -p parameter. Host- und Port-Übereinstimmung:
pg_dump -U postgres -d db12 > backup.sql
Wir können auch Befehlssequenzen verwenden, um diese Aufgabe auszuführen:
ssh user@hostname -p 5432 pg_dump -U postgres -d db12 > backup.sql
Ersetzen Sie Benutzername, Hostname und Port durch Ihre gewünschte Konfiguration. Wenn Sie DB r sichern und wiederherstellen möchtenapidly zwischen mehreren Servern, dann geben Sie Folgendes ein:
pg_dump -h 78.43.11.2 db_name | psql -h 72.43.11.2 db_name
Der erste Teil ermöglichte die Verbindung zum Server mit der Datenbank und die Verwendung einer Pipe-Umleitungsausgabe an den Zielserver mit einem Befehl nach einem getrennten Zeichen.
Und mit dem Befehl scp können wir db übertragen:
scp ./backup.sql root@94.141.98.9:/
Wir sollten eine Datenbank erstellen und Inhalte mit dem folgenden Befehl wiederherstellen:
CREATE DATABASE db12;
Dann mit dem psql-Befehl wiederherstellen:
psql -U postgres -d db12 < backup.sql
Stellen Sie die Integrität des Inhalts in der Datenbank sicher:
SELECT * FROM customers;
Wenn die Datenbank viele Daten und eine große Größe hat, verwenden Sie gespalten und zip-Dienstprogramm zum Übertragen von Daten:
pg_dump name_db | gzip > name_archive.gz
gunzip -c name_archive.gz | psql name_db
Und mit der folgenden Syntax aufteilen:
pg_dump name_db | split -b 4G - name_file
cat name_file | psql name_db
Dies trägt zu einer effektiveren Übertragung von Daten während des Backups bei.
Zusammenfassung
Wenn Sie diese Vorgehensweisen befolgen und die empfohlenen Befehle und Dienstprogramme verwenden, können Sie die Datensicherung und -wiederherstellung effektiv und effizient verwalten PostgreSQL, um die Stabilität und Zuverlässigkeit des modernen Informationssystems angesichts potenzieller Herausforderungen und Bedrohungen sicherzustellen.