Zu allen Tipps
Linux

So sichern Sie eine PostgreSQL-Datenbank mit pg_dump

So sichern Sie eine PostgreSQL-Datenbank mit pg_dump PostgreSQL enthält ein Dienstprogramm namens "pg_dump", mit dem Datenbankinformationen zu Sicherungszwecken in eine Datei geschrieben werden können. Das Dienstprogramm pg_dump wird über die Linux-B…

Veröffentlicht am 17.09.2020

PostgreSQL-Datenbank mit pg_dump sichern

PostgreSQL enthält mit pg_dump ein leistungsfähiges Werkzeug, um eine Datenbank zu sichern. Dabei wird der Inhalt der Datenbank in eine Sicherungsdatei exportiert, die später wieder eingespielt werden kann.

Das Programm wird über die Linux-Kommandozeile ausgeführt und gehört zum Standardumfang jeder PostgreSQL-Installation.

Grundlegende Syntax

Die einfachste Form eines Datenbank-Backups sieht wie folgt aus:

pg_dump DATENBANKNAME > backup.sql

Der Befehl muss mit einem Benutzer ausgeführt werden, der über ausreichende Berechtigungen zum Lesen der Datenbank verfügt.

Lokales Backup erstellen

Melden Sie sich als PostgreSQL-Benutzer an und erstellen Sie anschließend die Sicherung:

sudo su - postgres

pg_dump postgres > postgres_db.bak

In diesem Beispiel wird die Standarddatenbank postgres in die Datei postgres_db.bak exportiert.

Backup eines Remote-Servers

pg_dump arbeitet als PostgreSQL-Client und kann daher auch Datenbanken auf entfernten Servern sichern.

Hierzu werden Host und Port angegeben:

pg_dump \
    -h SERVERNAME \
    -p 5432 \
    DATENBANKNAME > backup.sql

Mit einem bestimmten Benutzer verbinden

Soll ein anderer PostgreSQL-Benutzer verwendet werden, kann dieser mit der Option -U angegeben werden:

pg_dump \
    -U BENUTZERNAME \
    -h SERVERNAME \
    -p 5432 \
    DATENBANKNAME > backup.sql

Authentifizierung

Für pg_dump gelten dieselben Authentifizierungsregeln wie für andere PostgreSQL-Clients.

Je nach Konfiguration der Datei pg_hba.conf erfolgt die Anmeldung beispielsweise über:

  • Passwort
  • Peer-Authentifizierung
  • SSL-Zertifikate
  • Trust-Authentifizierung

Stellen Sie daher sicher, dass der verwendete Benutzer über die notwendigen Berechtigungen verfügt und eine Verbindung zur Datenbank herstellen kann.

Fazit

Mit pg_dump lassen sich PostgreSQL-Datenbanken schnell und zuverlässig sichern. Das Tool eignet sich sowohl für lokale Sicherungen als auch für Backups über das Netzwerk und sollte Bestandteil jeder regelmäßigen Datensicherungsstrategie sein.

Eigenes IT-Problem?

Nicht jeder Fall passt in einen Tipp

Wenn es bei Ihnen komplizierter wird, übernehmen wir das gerne direkt für Sie.