Dies ist die mehrseitige Druckansicht dieses Abschnitts. .
Befehlsreferenz
- 1: Befehl für Anmerkungen (annotate)
- 2: Befehl zum Abrufen aus dem Archiv (archive-get)
- 3: Befehl zum Übertragen ins Archiv (archive-push)
- 4: Backup-Befehl (backup)
- 5: Prüfbefehl (check)
- 6: Befehl zum Entfernen abgelaufener Backups (expire)
- 7: Hilfebefehl (help)
- 8: Informationsbefehl (info)
- 9: Befehl zum Lesen aus dem Repository (repo-get)
- 10: Befehl zum Auflisten des Repository-Inhalts (repo-ls)
- 11: Befehl zur Wiederherstellung (restore)
- 12: Server-Befehl (server)
- 13: Server-Ping-Befehl (server-ping)
- 14: Befehl zum Erstellen einer Stanza (stanza-create)
- 15: Befehl zum Löschen einer Stanza (stanza-delete)
- 16: Befehl zum Aktualisieren einer Stanza (stanza-upgrade)
- 17: Startbefehl (start)
- 18: Stoppbefehl (stop)
- 19: Validierungsbefehl (verify)
- 20: Versionsbefehl (version)
Einführung
Befehle führen die verschiedenen pgBackRest-Funktionen aus. Hier sind sämtliche Befehlsoptionen aufgeführt: Jede auf einen Befehl anwendbare Option wird bei diesem Befehl genannt, auch wenn sie für weitere Befehle gilt. Dazu gehören alle Optionen, die auch in pgbackrest.conf konfiguriert werden können.
Nicht boolesche Optionen aus pgbackrest.conf lassen sich über die Befehlszeile mit dem Präfix reset- auf ihren Standardwert zurücksetzen. Damit kann ein Backup direkt auf einem Repository-Host wiederhergestellt werden. Normalerweise meldet pgBackRest einen Fehler, weil es erkennt, dass sich die Datenbank auf einem entfernten Host befindet und Wiederherstellungen nicht aus der Ferne möglich sind. Mit --reset-pg1-host in der Befehlszeile ignoriert pgBackRest den entfernten Datenbank-Host und führt die Wiederherstellung lokal aus. Möglicherweise muss ein neuer Wert für --pg1-path angegeben werden, um die Wiederherstellung in einem bestimmten Pfad zu erzwingen, also nicht in dem auf dem Datenbank-Host verwendeten Pfad.
Mit dem Präfix no- lässt sich eine boolesche Option über die Befehlszeile auf false setzen.
Jede Option kann über eine Umgebungsvariable gesetzt werden. Dazu werden das Präfix PGBACKREST_ und der Optionsname in Großbuchstaben verwendet, wobei - durch _ ersetzt wird. Beispielsweise wird pg1-path zu PGBACKREST_PG1_PATH und stanza zu PGBACKREST_STANZA. Boolesche Optionen werden wie in einer Konfigurationsdatei angegeben, etwa PGBACKREST_COMPRESS="n"; Varianten mit reset-* sind nicht zulässig. Für Optionen, die mehrfach in der Befehlszeile oder einer Konfigurationsdatei angegeben werden können, werden die Werte durch Doppelpunkte getrennt, etwa PGBACKREST_DB_INCLUDE="db1:db2".
Befehlszeilenoptionen haben Vorrang vor Umgebungsvariablen; diese haben wiederum Vorrang vor Optionen aus der Konfigurationsdatei.
Informationen zu den Optionentypen finden Sie in der Einführung zur Konfiguration
Befehle
| Befehl | Zusammenfassung |
|---|---|
annotate
|
Backup-Anmerkungen nach der Erstellung des Backups hinzufügen, ändern oder entfernen. |
archive-get
|
Archivierte WAL-Segmente für Wiederherstellung, PITR oder die Recovery eines Replikats abrufen. |
archive-push
|
WAL-Segmente von PostgreSQL entgegennehmen und an die konfigurierten Repositorys übertragen. |
backup
|
Backups im Ziel-Repository erstellen (standardmäßig im Repository mit der höchsten Priorität). |
check
|
Die Backup- und Archivkonfiguration einer Stanza und die Funktionsfähigkeit der WAL-Archivierung prüfen. |
expire
|
Backups und archivierte WAL gemäß den konfigurierten Aufbewahrungsregeln entfernen. |
help
|
Allgemeine Hilfe oder Hilfe zu einem Befehl oder einer Option anzeigen. |
info
|
Status und Metadaten von Stanzas und Backups im Text- oder JSON-Format anzeigen. |
repo-get
|
Repository-Dateien für Verwaltung, Untersuchung und Tests lesen (wie cat). |
repo-ls
|
Repository-Dateien und -Pfade für Verwaltung, Untersuchung und Tests auflisten (wie ls). |
restore
|
Ein Backup wiederherstellen (standardmäßig das neueste), optional mit Point-in-Time-Recovery. |
server
|
Den pgBackRest-TLS-Server für den Zugriff auf entfernte Hosts ohne SSH ausführen. |
server-ping
|
Einen pgBackRest-TLS-Server mit einem Ping darauf prüfen, ob er Verbindungen annimmt. |
stanza-create
|
Stanza-Metadaten in allen konfigurierten Repositorys erstellen. |
stanza-delete
|
Alle Backups und Archive einer Stanza dauerhaft entfernen. |
stanza-upgrade
|
Stanza-Metadaten nach einem Upgrade auf eine neue PostgreSQL-Hauptversion aktualisieren. |
start
|
Die Ausführung von pgBackRest-Prozessen nach einem vorherigen stop wieder zulassen. |
stop
|
Neue pgBackRest-Prozesse verhindern und laufende Prozesse optional zwangsweise beenden. |
verify
|
Die Gültigkeit der Backup- und Archivdaten im Repository prüfen. |
version
|
Die installierte pgBackRest-Version anzeigen. |
1 - Befehl für Anmerkungen (annotate)
annotate.Mit dem Befehl backup angegebene Anmerkungen können nachträglich mit dem Befehl annotate hinzugefügt, geändert oder entfernt werden.
Befehlsoptionen
Option für Backup-Anmerkungen (--annotation)
Das Backup mit benutzerdefinierten Schlüssel/Wert-Paaren versehen.
Benutzer können dem Backup informative Schlüssel/Wert-Paare hinzufügen. Diese Option kann mehrfach verwendet werden, um mehrere Anmerkungen hinzuzufügen.
Anmerkungen erscheinen in der Textausgabe des Befehls info, wenn mit --set ein Backup angegeben wird. In der JSON-Ausgabe erscheinen sie immer.
Option zur Auswahl des Backup-Satzes (--set)
Backup-Satz, dessen Anmerkungen bearbeitet werden sollen.
Der Backup-Satz, dessen Anmerkungen bearbeitet werden sollen.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
2 - Befehl zum Abrufen aus dem Archiv (archive-get)
archive-get.PostgreSQL verwendet diesen Befehl, um ein Backup wiederherzustellen, PITR durchzuführen oder ein Replikat als Alternative zum Streaming aktuell zu halten. WAL-Segmente werden für die PostgreSQL-Recovery oder zur Pflege eines Replikats benötigt.
Sind mehrere Repositorys konfiguriert, werden WAL-Segmente in der Reihenfolge ihrer Priorität aus ihnen abgerufen (z. B. repo1, repo2 usw.). Im Allgemeinen sollte schnellerer oder günstigerer Speicher eine höhere Priorität erhalten. Wird mit --repo ein Repository angegeben, wird nur dieses durchsucht.
pgBackRest konfiguriert und erzeugt den Befehl archive-get während einer Wiederherstellung zur Verwendung durch PostgreSQL. Ein Beispiel finden Sie unter Point-in-Time-Recovery
.
Befehlsoptionen
Option für asynchrone Archivierung (--archive-async)
WAL-Segmente asynchron übertragen und abrufen.
Aktiviert den asynchronen Betrieb für die Befehle archive-push und archive-get.
Der asynchrone Betrieb ist effizienter, da er Verbindungen wiederverwenden und parallele Verarbeitung nutzen kann. Weitere Informationen bieten die Optionen spool-path, archive-get-queue-max und archive-push-queue-max.
Option für die maximale Größe der Abrufwarteschlange (--archive-get-queue-max)
Maximale Größe der archive-get-Warteschlange von pgBackRest.
Legt die maximale Größe der archive-get-Warteschlange fest, wenn archive-async aktiviert ist. Die Warteschlange liegt im spool-path und beschleunigt die Bereitstellung von WAL für PostgreSQL.
Option zum erneuten Abruf fehlender WAL-Segmente (--archive-missing-retry)
Abruf fehlender WAL-Segmente erneut versuchen
Ein WAL-Segment erneut abrufen, das der Befehl archive-get im asynchronen Modus zuvor als fehlend gemeldet hat. Dies verhindert, dass Meldungen einer früheren Wiederherstellung aus dem Spool-Pfad verwendet werden und möglicherweise die Recovery scheitern lassen, wenn noch kein konsistenter Zustand erreicht wurde.
Bei deaktivierter Option kann PostgreSQL zuverlässiger erkennen, wann das Ende des WAL im Archiv erreicht ist, und dann zum Streaming vom Primärserver wechseln. Bei aktivierten Wiederholungsversuchen führt ein stetiger Strom neu archivierter WAL-Segmente dazu, dass PostgreSQL weiterhin WAL aus dem Archiv abruft, statt zum Streaming zu wechseln.
Wird diese Option deaktiviert, muss sichergestellt werden, dass der Spool-Pfad der Stanza leer ist. Der Befehl restore erledigt dies automatisch, wenn der Spool-Pfad zum Zeitpunkt der Wiederherstellung konfiguriert ist. Andernfalls muss der Benutzer selbst dafür sorgen, dass der Spool-Pfad leer ist.
Option für das Archivierungszeitlimit (--archive-timeout)
Archivierungszeitlimit.
Maximale Wartezeit in Sekunden festlegen, bis ein einzelnes WAL-Segment das Archiv-Repository von pgBackRest erreicht. Dieses Zeitlimit gilt für die Befehle check und backup, wenn sie auf die Archivierung der WAL-Segmente warten, die für ein konsistentes Backup erforderlich sind.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den pgBackRest-Befehl (--cmd)
pgBackRest-Befehl.
pgBackRest kann eine Befehlszeichenfolge erzeugen, etwa wenn der Befehl restore die Einstellung restore_command erzeugt. Dafür wird der Befehl verwendet, mit dem der pgBackRest-Prozess gestartet wurde, sofern nicht die Option cmd angegeben ist.
ACHTUNG:
Das Einbetten des pgBackRest-Befehls in einen Wrapper kann unvorhersehbares Verhalten verursachen und wird nicht empfohlen.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für die maximale Prozessanzahl (--process-max)
Maximale Anzahl der Prozesse für Komprimierung und Übertragung.
Jeder Prozess führt Komprimierung und Übertragung aus, um den Befehl zu beschleunigen. process-max jedoch nicht so hoch setzen, dass die Datenbankleistung beeinträchtigt wird.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für den Spool-Pfad (--spool-path)
Pfad zum Speichern vorübergehend benötigter Daten.
In diesem Pfad werden Daten für die asynchronen Befehle archive-push und archive-get gespeichert.
Der asynchrone Befehl archive-push schreibt Bestätigungen in den Spool-Pfad, wenn WAL erfolgreich im Archiv gespeichert wurde, und Fehlermeldungen bei einem Fehlschlag. So kann der Vordergrundprozess PostgreSQL schnell benachrichtigen. Die Bestätigungsdateien sind sehr klein: bei Erfolg leer, bei Fehlern wenige hundert Byte groß.
Der asynchrone Befehl archive-get hält WAL im Spool-Pfad bereit, damit es auf Anfrage von PostgreSQL sehr schnell geliefert werden kann. Das Verschieben der Dateien zu PostgreSQL ist am effizientesten, wenn der Spool-Pfad auf demselben Dateisystem wie pg_xlog/pg_wal liegt. Es wird jedoch davon abgeraten, den Spool-Pfad innerhalb des Verzeichnisses pg_xlog/pg_wal anzulegen, da dies bei PostgreSQL-Werkzeugen wie pg_rewind Probleme verursachen kann.
Die Daten im Spool-Pfad sind nicht rein temporär, da sie einen Neustart überdauern können und sollten. Ihr Verlust ist jedoch kein Problem: Für archive-push prüft pgBackRest einfach jedes WAL-Segment erneut auf sichere Archivierung; für archive-get baut es die Warteschlange neu auf.
Der Spool-Pfad ist für ein lokales POSIX-kompatibles Dateisystem vorgesehen, nicht für ein entferntes Dateisystem wie NFS oder CIFS.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Zielzeitpunkt des Repositorys (--repo-target-time)
Zielzeitpunkt für das Repository.
Der Zielzeitpunkt legt fest, welchen Stand des Repositorys Befehle auf versioniertem Speicher lesen. So lässt sich das Repository zu einem früheren Zeitpunkt lesen, um Daten wiederherzustellen, die versehentlich durch Benutzer oder durch Schadsoftware gelöscht oder beschädigt wurden.
S3, GCS und Azure unterstützen versionierten Speicher, aktivieren ihn aber im Allgemeinen nicht standardmäßig. Neben der Versionierung kann es sinnvoll sein, bei S3 die Objektsperre und bei GCS oder Azure das vorläufige Löschen zu aktivieren.
Wenn repo-target-time angegeben wird, muss auch die Option repo angegeben werden. Wahrscheinlich unterstützen nicht alle Repository-Typen die Versionierung. Im Allgemeinen ist es sinnvoll, für die Wiederherstellung ein einzelnes Repository auszuwählen.
Beim Vergleich werden Speicherzeitstempel berücksichtigt, die <= dem angegebenen Zeitstempel sind. Enthaltene Millisekunden werden abgeschnitten.
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
Stanza-Optionen
Option für den PostgreSQL-Pfad (--pg-path)
PostgreSQL-Datenverzeichnis.
Dieser Pfad sollte dem von PostgreSQL gemeldeten data_directory entsprechen. Obwohl sich der Wert an verschiedenen Stellen auslesen lässt, ist eine ausdrückliche Angabe ratsam, falls diese Quellen bei einer Wiederherstellung oder einem Offline-Backup nicht verfügbar sind.
Bei jedem Online-Backup wird pg-path mit dem von PostgreSQL gemeldeten Wert verglichen. Die Option sollte daher immer aktuell sein.
Veralteter Name: db-path
3 - Befehl zum Übertragen ins Archiv (archive-push)
archive-push.Nimmt ein WAL-Segment von PostgreSQL entgegen und archiviert es in jedem Repository, das durch die indizierte Option repo-path definiert ist. Informationen zur Konfiguration der Repositorys finden Sie im Abschnitt Repository
. Abhängig von archive-async wird das WAL-Segment sofort ins Archiv übertragen oder lokal gespeichert. Sind mehrere Repositorys konfiguriert, versucht archive-push, das Segment an möglichst viele davon zu übertragen.
archive-push ist zur Konfiguration und zum Aufruf durch PostgreSQL vorgesehen. Ein Beispiel finden Sie unter Archivierung konfigurieren
.
Befehlsoptionen
Option für asynchrone Archivierung (--archive-async)
WAL-Segmente asynchron übertragen und abrufen.
Aktiviert den asynchronen Betrieb für die Befehle archive-push und archive-get.
Der asynchrone Betrieb ist effizienter, da er Verbindungen wiederverwenden und parallele Verarbeitung nutzen kann. Weitere Informationen bieten die Optionen spool-path, archive-get-queue-max und archive-push-queue-max.
Option zur Archivprüfung (--archive-check)
Vor Abschluss des Backups prüfen, ob sich die WAL-Segmente im Archiv befinden.
Prüft, ob alle für ein konsistentes Backup erforderlichen WAL-Segmente im WAL-Archiv vorhanden sind. Es empfiehlt sich, die Standardeinstellung beizubehalten, sofern keine andere Archivierungsmethode verwendet wird.
Diese Option muss aktiviert sein, wenn archive-copy aktiviert ist.
Option zur Prüfung des Archivierungsmodus (--archive-mode-check)
Die PostgreSQL-Einstellung archive_mode prüfen.
Diese standardmäßig aktivierte Option verbietet die PostgreSQL-Einstellung archive_mode=always.
Von einem Standby-Server übertragene WAL-Segmente können logisch mit denen des Primärservers übereinstimmen, aber andere Prüfsummen aufweisen. Zur Vermeidung von Konflikten wird empfohlen, die Archivierung aus mehreren Quellen zu unterbinden.
ACHTUNG:
Bei deaktivierter Option muss unbedingt sichergestellt werden, dass nur ein Archivierer mit dem Befehl archive-push in das Repository schreibt.
Option für die Datenmenge pro Archivierungslauf (--archive-push-batch-size)
Maximale WAL-Menge, die pro asynchronem Lauf übertragen wird.
Im asynchronen Modus überträgt der Prozess archive-push alle bereitstehenden WAL-Segmente in einem Lauf. Da archive-push-queue-max nur zu Beginn jedes Laufs geprüft wird, kann die Warteschlange bei einem Lauf mit sehr vielen Segmenten weit über den Grenzwert hinaus wachsen, bevor sie erneut geprüft wird.
Diese Option begrenzt die pro Lauf verarbeitete WAL-Menge. Der Prozess beendet sich dadurch und wird beim nächsten archive-push neu gestartet, wobei die Warteschlange erneut geprüft wird. Kleinere Werte führen zu häufigeren Prüfungen, erfordern aber auch häufigere Starts des asynchronen Prozesses. Der Wert wird auf eine ganze Anzahl von WAL-Segmenten abgerundet; mindestens ein Segment wird jedoch immer verarbeitet.
Option für die maximale Größe der Archivierungswarteschlange (--archive-push-queue-max)
Maximale Größe der PostgreSQL-Archivierungswarteschlange.
Nach Erreichen des Grenzwerts geschieht Folgendes:
- pgBackRest meldet PostgreSQL, dass das WAL erfolgreich archiviert wurde, und wird es dann VERWERFEN.
- Eine Warnung wird in das PostgreSQL-Protokoll geschrieben.
Dadurch wird der Archivprotokollstrom unterbrochen, und PITR ist über diesen Punkt hinaus nicht mehr möglich. Ein neues Backup ist erforderlich, um die vollständige Wiederherstellbarkeit erneut herzustellen.
Im asynchronen Modus wird die gesamte Warteschlange verworfen. So wird verhindert, dass kurzzeitig wieder einzelne WAL-Segmente archiviert werden, bevor die Grenze erneut überschritten wird.
Im asynchronen Modus wird diese Grenze nur zu Beginn jedes archive-push-Laufs geprüft. Daher kann die Warteschlange innerhalb eines Laufs darüber hinaus wachsen. archive-push-batch-size verringern, um die Warteschlange häufiger zu prüfen.
Diese Funktion soll verhindern, dass das Volume mit den Protokolldateien voll wird, da PostgreSQL dann vollständig zum Stillstand kommt. Es ist besser, das Backup zu verlieren, als PostgreSQL ausfallen zu lassen.
Veralteter Name: archive-queue-max
Option für das Archivierungszeitlimit (--archive-timeout)
Archivierungszeitlimit.
Maximale Wartezeit in Sekunden festlegen, bis ein einzelnes WAL-Segment das Archiv-Repository von pgBackRest erreicht. Dieses Zeitlimit gilt für die Befehle check und backup, wenn sie auf die Archivierung der WAL-Segmente warten, die für ein konsistentes Backup erforderlich sind.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den pgBackRest-Befehl (--cmd)
pgBackRest-Befehl.
pgBackRest kann eine Befehlszeichenfolge erzeugen, etwa wenn der Befehl restore die Einstellung restore_command erzeugt. Dafür wird der Befehl verwendet, mit dem der pgBackRest-Prozess gestartet wurde, sofern nicht die Option cmd angegeben ist.
ACHTUNG:
Das Einbetten des pgBackRest-Befehls in einen Wrapper kann unvorhersehbares Verhalten verursachen und wird nicht empfohlen.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option zur Komprimierung (--compress)
Dateikomprimierung verwenden.
Die Backup-Dateien sind mit Komprimierungswerkzeugen für die Befehlszeile kompatibel.
Diese Option ist inzwischen veraltet. Stattdessen sollte compress-type verwendet werden.
Option für die Komprimierungsstufe (--compress-level)
Komprimierungsstufe für Dateien.
Legt die Stufe für die Dateikomprimierung fest, wenn compress-type nicht none ist oder compress=y (veraltet) gilt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für das Komprimierungsverfahren (--compress-type)
Komprimierungsverfahren für Dateien.
Die folgenden Komprimierungsverfahren werden unterstützt:
none- Keine Komprimierungbz2- bzip2-Komprimierungsformatgz- gzip-Komprimierungsformatlz4- lz4-Komprimierungsformat (nicht auf allen Plattformen verfügbar)zst- Zstandard-Komprimierungsformat (nicht auf allen Plattformen verfügbar)
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für die maximale Prozessanzahl (--process-max)
Maximale Anzahl der Prozesse für Komprimierung und Übertragung.
Jeder Prozess führt Komprimierung und Übertragung aus, um den Befehl zu beschleunigen. process-max jedoch nicht so hoch setzen, dass die Datenbankleistung beeinträchtigt wird.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für den Spool-Pfad (--spool-path)
Pfad zum Speichern vorübergehend benötigter Daten.
In diesem Pfad werden Daten für die asynchronen Befehle archive-push und archive-get gespeichert.
Der asynchrone Befehl archive-push schreibt Bestätigungen in den Spool-Pfad, wenn WAL erfolgreich im Archiv gespeichert wurde, und Fehlermeldungen bei einem Fehlschlag. So kann der Vordergrundprozess PostgreSQL schnell benachrichtigen. Die Bestätigungsdateien sind sehr klein: bei Erfolg leer, bei Fehlern wenige hundert Byte groß.
Der asynchrone Befehl archive-get hält WAL im Spool-Pfad bereit, damit es auf Anfrage von PostgreSQL sehr schnell geliefert werden kann. Das Verschieben der Dateien zu PostgreSQL ist am effizientesten, wenn der Spool-Pfad auf demselben Dateisystem wie pg_xlog/pg_wal liegt. Es wird jedoch davon abgeraten, den Spool-Pfad innerhalb des Verzeichnisses pg_xlog/pg_wal anzulegen, da dies bei PostgreSQL-Werkzeugen wie pg_rewind Probleme verursachen kann.
Die Daten im Spool-Pfad sind nicht rein temporär, da sie einen Neustart überdauern können und sollten. Ihr Verlust ist jedoch kein Problem: Für archive-push prüft pgBackRest einfach jedes WAL-Segment erneut auf sichere Archivierung; für archive-get baut es die Warteschlange neu auf.
Der Spool-Pfad ist für ein lokales POSIX-kompatibles Dateisystem vorgesehen, nicht für ein entferntes Dateisystem wie NFS oder CIFS.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zur Prüfung der WAL-Header (--archive-header-check)
PostgreSQL-Version und -ID in WAL-Headern prüfen.
Diese standardmäßig aktivierte Option prüft den WAL-Header anhand der PostgreSQL-Version und der Systemkennung. Dadurch wird sichergestellt, dass WAL in die richtige Stanza kopiert wird. Zusätzlich wird bereits pg_control mit der Stanza abgeglichen und geprüft, ob WAL aus demselben PostgreSQL-Datenverzeichnis kopiert wird, in dem sich pg_control befindet.
Das Deaktivieren dieser Prüfung ist daher relativ sicher, sollte aber nur bei Bedarf erfolgen, etwa wenn WAL verschlüsselt ist.
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
Stanza-Optionen
Option für den PostgreSQL-Pfad (--pg-path)
PostgreSQL-Datenverzeichnis.
Dieser Pfad sollte dem von PostgreSQL gemeldeten data_directory entsprechen. Obwohl sich der Wert an verschiedenen Stellen auslesen lässt, ist eine ausdrückliche Angabe ratsam, falls diese Quellen bei einer Wiederherstellung oder einem Offline-Backup nicht verfügbar sind.
Bei jedem Online-Backup wird pg-path mit dem von PostgreSQL gemeldeten Wert verglichen. Die Option sollte daher immer aktuell sein.
Veralteter Name: db-path
4 - Backup-Befehl (backup)
backup.Sind mehrere Repositorys konfiguriert, erstellt pgBackRest das Backup im Repository mit der höchsten Priorität (z. B. repo1), sofern nicht die Option --repo angegeben wird.
pgBackRest besitzt keinen integrierten Zeitplaner. Daher empfiehlt sich der Aufruf über cron oder einen anderen Mechanismus zur Zeitplanung.
Weitere Einzelheiten und Beispiele finden Sie unter Ein Backup erstellen .
Befehlsoptionen
Option für Backup-Anmerkungen (--annotation)
Das Backup mit benutzerdefinierten Schlüssel/Wert-Paaren versehen.
Benutzer können dem Backup informative Schlüssel/Wert-Paare hinzufügen. Diese Option kann mehrfach verwendet werden, um mehrere Anmerkungen hinzuzufügen.
Anmerkungen erscheinen in der Textausgabe des Befehls info, wenn mit --set ein Backup angegeben wird. In der JSON-Ausgabe erscheinen sie immer.
Option zur Archivprüfung (--archive-check)
Vor Abschluss des Backups prüfen, ob sich die WAL-Segmente im Archiv befinden.
Prüft, ob alle für ein konsistentes Backup erforderlichen WAL-Segmente im WAL-Archiv vorhanden sind. Es empfiehlt sich, die Standardeinstellung beizubehalten, sofern keine andere Archivierungsmethode verwendet wird.
Diese Option muss aktiviert sein, wenn archive-copy aktiviert ist.
Option zum Kopieren des Archivs (--archive-copy)
Für die Konsistenz benötigte WAL-Segmente in das Backup kopieren.
Diese etwas übervorsichtige Option schützt vor beschädigten Daten im WAL-Segmentarchiv, indem sie die für die Konsistenz erforderlichen WAL-Segmente direkt im Backup speichert. Die WAL-Segmente bleiben zusätzlich im Archiv gespeichert, daher benötigt diese Option weiteren Speicherplatz.
Bei Verwendung dieser Option sollten die Befehle archive-push und backup möglichst denselben Wert für compress-type verwenden (z. B. lz4). Andernfalls müssen die WAL-Segmente mit dem für das Backup verwendeten compress-type neu komprimiert werden. Je nach der während des Backups erzeugten WAL-Menge kann dies recht aufwendig sein.
Bei der Wiederherstellung liegen die WAL-Segmente in pg_xlog/pg_wal. PostgreSQL bevorzugt diese Segmente gegenüber einem Aufruf von restore_command.
Die Option archive-check muss aktiviert sein, wenn archive-copy aktiviert ist.
Option zur Prüfung des Archivierungsmodus (--archive-mode-check)
Die PostgreSQL-Einstellung archive_mode prüfen.
Diese standardmäßig aktivierte Option verbietet die PostgreSQL-Einstellung archive_mode=always.
Von einem Standby-Server übertragene WAL-Segmente können logisch mit denen des Primärservers übereinstimmen, aber andere Prüfsummen aufweisen. Zur Vermeidung von Konflikten wird empfohlen, die Archivierung aus mehreren Quellen zu unterbinden.
ACHTUNG:
Bei deaktivierter Option muss unbedingt sichergestellt werden, dass nur ein Archivierer mit dem Befehl archive-push in das Repository schreibt.
Option für das Archivierungszeitlimit (--archive-timeout)
Archivierungszeitlimit.
Maximale Wartezeit in Sekunden festlegen, bis ein einzelnes WAL-Segment das Archiv-Repository von pgBackRest erreicht. Dieses Zeitlimit gilt für die Befehle check und backup, wenn sie auf die Archivierung der WAL-Segmente warten, die für ein konsistentes Backup erforderlich sind.
Option für Backups vom Standby (--backup-standby)
Backup vom Standby-Cluster erstellen.
Backups vom Standby aktivieren, um die Last auf dem Primärcluster zu verringern. Für diese Option müssen sowohl der Primär- als auch der Standby-Host konfiguriert sein.
Die folgenden Modi werden unterstützt:
y- Für das Backup ist ein Standby erforderlich.prefer- Backup vom Standby erstellen, falls verfügbar, andernfalls vom Primärserver.n- Backup ausschließlich vom Primärserver erstellen.
Option für Seitenprüfsummen (--checksum-page)
Prüfsummen der Datenseiten validieren.
Weist pgBackRest an, beim Backup eines Clusters die Prüfsummen aller Datenseiten zu validieren. Diese Option wird automatisch aktiviert, wenn Datenseitenprüfsummen im Cluster aktiviert sind.
Fehler bei der Prüfsummenvalidierung brechen das Backup nicht ab. Stattdessen werden Warnungen ins Protokoll geschrieben und bei Standardeinstellungen auch auf der Konsole ausgegeben. Die Liste der ungültigen Seiten wird im Backup-Manifest gespeichert.
Option zum Ausschließen von Pfaden und Dateien (--exclude)
Pfade und Dateien vom Backup ausschließen.
Alle Ausschlüsse beziehen sich auf $PGDATA. Endet der Ausschluss mit /, werden nur Dateien im angegebenen Verzeichnis ausgeschlossen. Beispielsweise schließt --exclude=junk/ alle Dateien im Verzeichnis $PGDATA/junk aus, nimmt aber das Verzeichnis selbst auf. Endet der Ausschluss nicht mit /, kann eine Datei entweder genau dem Ausschluss entsprechen oder dem Ausschluss mit angehängtem /. So schließt --exclude=junk das Verzeichnis $PGDATA/junk und alle darin enthaltenen Dateien aus.
Diese Funktion mit Vorsicht verwenden: Wichtige Inhalte lassen sich leicht versehentlich ausschließen, wodurch das Backup inkonsistent wird. Testen Sie unbedingt Ihre Wiederherstellungen!
Alle ausgeschlossenen Dateien werden zusammen mit der Ausschlussregel auf der Stufe info protokolliert. Prüfen Sie unbedingt die Liste, damit keine Dateien unerwartet ausgeschlossen werden.
HINWEIS: Ausschlüsse werden bei Delta-Wiederherstellungen nicht berücksichtigt. Alle beim Backup ausgeschlossenen Dateien und Verzeichnisse werden bei einer Delta-Wiederherstellung entfernt.
Diese Option sollte nicht verwendet werden, um PostgreSQL-Protokolle vom Backup auszuschließen. Mit der PostgreSQL-Einstellung log_directory lassen sich Protokolle außerhalb des Verzeichnisses PGDATA ablegen. Dies hat den Vorteil, dass sie nach einer Wiederherstellung erhalten bleiben können.
In der Befehlszeile oder einer Konfigurationsdatei können mehrere Ausschlüsse angegeben werden.
Option zur automatischen Bereinigung (--expire-auto)
Nach einem erfolgreichen Backup automatisch den Befehl expire ausführen.
Diese Einstellung ist standardmäßig aktiviert. Beim Deaktivieren ist Vorsicht geboten: Alle Backups und Archive bleiben dann unbegrenzt erhalten, wodurch der Speicherplatz im Repository ausgehen kann. Um dies zu verhindern, muss der Befehl expire regelmäßig ausgeführt werden.
Wird expire nach einem erfolgreichen Backup automatisch ausgeführt, verwendet es die Konfiguration des Befehls backup. Optionen, die ausschließlich in einem Abschnitt für den Befehl expire stehen, etwa [global:expire], werden daher nicht angewendet. Um eine eigene Konfiguration für expire anzuwenden, diese Option deaktivieren und den Befehl expire separat ausführen.
Option zum Erzwingen (--force)
Ein Offline-Backup erzwingen.
Zusammen mit --no-start-stop wird ein Backup auch dann ausgeführt, wenn pgBackRest davon ausgeht, dass PostgreSQL läuft. Diese Option sollte mit äußerster Vorsicht verwendet werden, da sie wahrscheinlich zu einem unbrauchbaren Backup führt.
Unter bestimmten Umständen kann ein Backup auch unter diesen Bedingungen wünschenswert sein. Stürzt beispielsweise ein Server ab und lässt sich das Volume des Datenbankclusters nur lesend einhängen, ist ein Backup auch dann sinnvoll, wenn postmaster.pid vorhanden ist. In diesem Fall wäre es besser, auf das vorherige Backup zurückzugreifen und WAL erneut einzuspielen. Möglicherweise befindet sich aber eine sehr wichtige Transaktion in einem noch nicht archivierten WAL-Segment.
Option für den Schwellenwert zum Speichern des Manifests (--manifest-save-threshold)
Schwellenwert zum Speichern des Manifests während des Backups.
Legt fest, wie oft das Manifest während eines Backups gespeichert wird. Das Speichern ist wichtig, da das Manifest Prüfsummen enthält und eine effiziente Wiederaufnahme ermöglicht. Der tatsächlich verwendete Schwellenwert ist der größere Wert aus 1% der Backup-Größe und manifest-save-threshold.
Option für Online-Backups (--online)
Ein Online-Backup erstellen.
Mit –no-online führt pgBackRest die Funktionen zum Starten und Stoppen des Backups auf dem Datenbankcluster nicht aus. Dazu sollte PostgreSQL heruntergefahren sein; andernfalls meldet pgBackRest einen Fehler.
Diese Option ermöglicht Offline-Backups. Das Verzeichnis pg_xlog/pg_wal wird unverändert kopiert, und archive-check wird für das Backup automatisch deaktiviert.
Option zur Wiederaufnahme (--resume)
Die Wiederaufnahme eines fehlgeschlagenen Backups erlauben.
Legt fest, ob die Wiederaufnahme aktiviert ist. Sie kann die benötigte Zeit erheblich verkürzen, wenn zuvor ein Backup desselben Typs fehlgeschlagen ist. Sie erhöht jedoch die Komplexität. In Umgebungen, die diese Funktion nicht benötigen, kann es daher sinnvoll sein, sie zu deaktivieren.
Option für einen schnellen Start (--start-fast)
Einen Checkpoint erzwingen, um das Backup schnell zu starten.
Erzwingt einen Checkpoint, indem dem Parameter fast der Backup-Startfunktion der Wert y übergeben wird, sodass das Backup sofort beginnt. Andernfalls beginnt es nach dem nächsten regulären Checkpoint.
Option für den Typ (--type)
Backup-Typ.
Die folgenden Backup-Typen werden unterstützt:
full- Alle Dateien des Datenbankclusters werden kopiert; es bestehen keine Abhängigkeiten von vorherigen Backups.incr- Inkrementelles Backup seit dem letzten erfolgreichen Backup.diff- Wie ein inkrementelles Backup, aber stets auf Grundlage des letzten vollständigen Backups.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den pgBackRest-Befehl (--cmd)
pgBackRest-Befehl.
pgBackRest kann eine Befehlszeichenfolge erzeugen, etwa wenn der Befehl restore die Einstellung restore_command erzeugt. Dafür wird der Befehl verwendet, mit dem der pgBackRest-Prozess gestartet wurde, sofern nicht die Option cmd angegeben ist.
ACHTUNG:
Das Einbetten des pgBackRest-Befehls in einen Wrapper kann unvorhersehbares Verhalten verursachen und wird nicht empfohlen.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option zur Komprimierung (--compress)
Dateikomprimierung verwenden.
Die Backup-Dateien sind mit Komprimierungswerkzeugen für die Befehlszeile kompatibel.
Diese Option ist inzwischen veraltet. Stattdessen sollte compress-type verwendet werden.
Option für die Komprimierungsstufe (--compress-level)
Komprimierungsstufe für Dateien.
Legt die Stufe für die Dateikomprimierung fest, wenn compress-type nicht none ist oder compress=y (veraltet) gilt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für das Komprimierungsverfahren (--compress-type)
Komprimierungsverfahren für Dateien.
Die folgenden Komprimierungsverfahren werden unterstützt:
none- Keine Komprimierungbz2- bzip2-Komprimierungsformatgz- gzip-Komprimierungsformatlz4- lz4-Komprimierungsformat (nicht auf allen Plattformen verfügbar)zst- Zstandard-Komprimierungsformat (nicht auf allen Plattformen verfügbar)
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das Datenbankzeitlimit (--db-timeout)
Zeitlimit für Datenbankabfragen.
Legt das Zeitlimit für Datenbankabfragen in Sekunden fest. Dazu gehören auch die Funktionen zum Starten und Stoppen des Backups, die jeweils viel Zeit benötigen können. Daher sollte das Zeitlimit hoch bleiben, sofern nicht bekannt ist, dass diese Funktionen schnell zurückkehren, etwa wenn start-fast=y gesetzt ist und bekannt ist, dass der Datenbankcluster während des Backups nur wenige WAL-Segmente erzeugt.
HINWEIS: Der Wert von
db-timeoutmuss kleiner sein als der vonprotocol-timeout.
Delta-Option (--delta)
Wiederherstellung oder Backup anhand von Prüfsummen durchführen.
Bei einer Wiederherstellung wird standardmäßig erwartet, dass die PostgreSQL-Daten- und Tablespace-Verzeichnisse vorhanden, aber leer sind. Diese Option führt eine Delta-Wiederherstellung anhand von Prüfsummen durch.
Bei einem Backup verwendet diese Option Prüfsummen anstelle von Zeitstempeln, um zu entscheiden, ob Dateien kopiert werden.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für die maximale Prozessanzahl (--process-max)
Maximale Anzahl der Prozesse für Komprimierung und Übertragung.
Jeder Prozess führt Komprimierung und Übertragung aus, um den Befehl zu beschleunigen. process-max jedoch nicht so hoch setzen, dass die Datenbankleistung beeinträchtigt wird.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zur Prüfung der Seitenheader (--page-header-check)
PostgreSQL-Seitenheader prüfen.
Diese standardmäßig aktivierte Option ergänzt Prüfungen der Seitenheader.
Das Deaktivieren dieser Option sollte vermieden werden, außer wenn es erforderlich ist, etwa bei verschlüsselten Seiten.
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für inkrementelle Backups auf Blockebene (--repo-block)
Inkrementelle Backups auf Blockebene aktivieren.
Inkrementelle Backups auf Blockebene ermöglichen feinere Abstufungen, indem Dateien in Blöcke aufgeteilt werden, die sich unabhängig voneinander sichern lassen. Dies spart Speicherplatz im Repository und kann Delta-Wiederherstellungen beschleunigen, da einzelne Blöcke abgerufen werden können, ohne die gesamte Datei aus dem Repository zu lesen.
HINWEIS:
repo-bundlemuss aktiviert sein, bevorrepo-blockaktiviert werden kann.
Die Blockgröße einer Datei wird anhand ihrer Größe und ihres Alters bestimmt. Ältere oder größere Dateien erhalten im Allgemeinen größere Blöcke. Ist eine Datei alt genug, wird sie nicht inkrementell auf Blockebene gesichert.
Inkrementelle Backups auf Blockebene sind am effizientesten, wenn sie für alle Backup-Typen einschließlich vollständiger Backups aktiviert sind. Das vollständige Backup wird dadurch etwas größer. Spätere differenzielle und inkrementelle Backups können aber die dabei erzeugten Blockzuordnungen nutzen, um Speicherplatz zu sparen.
Option für Dateibündel im Repository (--repo-bundle)
Dateien im Repository bündeln.
Kleinere Dateien bündeln, also zusammenfassen, um die Gesamtzahl der ins Repository geschriebenen Dateien zu verringern. Weniger Dateien zu schreiben ist im Allgemeinen effizienter, insbesondere bei Objektspeichern wie S3. Außerdem werden leere Dateien nur im Manifest erfasst und ansonsten nicht gespeichert, was Zeit und Speicherplatz spart.
Option für die Dateigrößengrenze beim Bündeln (--repo-bundle-limit)
Grenzwert für Dateibündel.
Größenlimit für Dateien, die in Bündel aufgenommen werden. Größere Dateien werden separat gespeichert.
Gebündelte Dateien können bei der Wiederaufnahme eines Backups nicht wiederverwendet werden. Diese Option bestimmt daher, welche Dateien sich wiederverwenden lassen: Höhere Werte führen zu weniger wiederverwendbaren Dateien.
Option für die Bündelgröße im Repository (--repo-bundle-size)
Zielgröße für Dateibündel.
Legt die angestrebte Gesamtgröße der Dateien in einem Bündel fest. Die unkomprimierte Bündelgröße kann bis zu repo-bundle-size + repo-bundle-limit betragen. Deshalb diese Option nicht auf die maximal zulässige Dateigröße des Dateisystems setzen.
Im Allgemeinen sollte diese Option nicht zu hoch gesetzt werden, da bei Wiederholungsversuchen das gesamte Bündel erneut verarbeitet werden muss.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für Hardlinks im Repository (--repo-hardlink)
Dateien zwischen Backups im Repository durch Hardlinks verbinden.
Aktiviert Hardlinks von Dateien in differenziellen und inkrementellen Backups auf die zugehörigen vollständigen Backups. Auf Dateisystemebene wirkt dadurch jedes Backup wie ein vollständiges Backup. Vorsicht: Änderungen an Dateien mit Hardlinks können alle Backups des Satzes betreffen.
Veralteter Name: hardlink
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für die Archivaufbewahrung (--repo-retention-archive)
Anzahl der Backups, für die lückenloses WAL aufbewahrt wird.
HINWEIS: WAL-Segmente, die für ein konsistentes Backup erforderlich sind, bleiben unabhängig von dieser Einstellung immer bis zum Entfernen des Backups erhalten.
Ist dieser Wert nicht gesetzt und ist repo-retention-full-type auf count gesetzt (Standardeinstellung), richtet sich die Archivbereinigung nach repo-retention-full beziehungsweise repo-retention-diff, wenn repo-retention-archive-type auf full beziehungsweise diff gesetzt ist. So wird WAL nur für bereits entfernte Backups gelöscht. Ist repo-retention-full-type auf time gesetzt, werden standardmäßig Archive entfernt, die älter sind als das älteste vollständige Backup, das nach Anwendung von repo-retention-full aufbewahrt wird.
Diese Option muss gesetzt sein, wenn repo-retention-archive-type auf incr gesetzt ist. Bei knappem Speicherplatz kann sie zusammen mit repo-retention-archive-type verwendet werden, um WAL-Segmente frühzeitig zu entfernen. Damit ist jedoch keine PITR mehr aus Backups möglich, deren WAL entfernt wurde. Dies wird daher nicht empfohlen.
Veralteter Name: retention-archive
Option für den Typ der Archivaufbewahrung (--repo-retention-archive-type)
Backup-Typ für die WAL-Aufbewahrung.
Bei full bewahrt pgBackRest Archivprotokolle für die durch repo-retention-archive festgelegte Anzahl vollständiger Backups auf. Bei diff (differenziell) werden sie für die durch repo-retention-archive festgelegte Anzahl vollständiger und differenzieller Backups aufbewahrt. War das letzte Backup vollständig, wird es für repo-retention also als differenzielles Backup gezählt. Bei incr (inkrementell) bewahrt pgBackRest Archivprotokolle für die durch repo-retention-archive festgelegte Anzahl vollständiger, differenzieller und inkrementeller Backups auf. Es wird empfohlen, die Standardeinstellung beizubehalten, bei der WAL nur zusammen mit vollständigen Backups entfernt wird.
Veralteter Name: retention-archive-type
Option für die Aufbewahrung differenzieller Backups (--repo-retention-diff)
Anzahl der aufzubewahrenden differenziellen Backups.
Wird ein differenzielles Backup entfernt, werden auch alle zugehörigen inkrementellen Backups entfernt. Ohne Angabe bleiben alle differenziellen Backups erhalten, bis die vollständigen Backups entfernt werden, von denen sie abhängen.
Bei der Bereinigung zählen vollständige Backups zur Anzahl der differenziellen Backups. Dadurch müssen in den meisten Fällen etwas weniger differenzielle Backups aufbewahrt werden.
Veralteter Name: retention-diff
Option für die Aufbewahrung vollständiger Backups (--repo-retention-full)
Anzahl oder Aufbewahrungsdauer vollständiger Backups.
Wird ein vollständiges Backup entfernt, werden auch alle zugehörigen differenziellen und inkrementellen Backups entfernt. Ist diese Option nicht gesetzt, wird eine Warnung ausgegeben. Für eine unbegrenzte Aufbewahrung die Option auf den Höchstwert setzen.
Veralteter Name: retention-full
Option für die Art der Aufbewahrung vollständiger Backups (--repo-retention-full-type)
Art der Aufbewahrung vollständiger Backups.
Bestimmt, ob repo-retention-full einen Zeitraum in Tagen oder die Anzahl der aufzubewahrenden vollständigen Backups angibt.
Bei time werden vollständige Backups, die älter als repo-retention-full sind, aus dem Repository entfernt, wenn mindestens ein weiteres Backup vorhanden ist, dessen Alter mindestens dem Wert von repo-retention-full entspricht. Steht beispielsweise repo-retention-full auf 30 Tage und gibt es 2 vollständige Backups, eines 25 Tage und eines 35 Tage alt, wird keines entfernt. Würde das 35 Tage alte Backup entfernt, bliebe nur das 25 Tage alte übrig. Dies würde die Aufbewahrungsregel von 30 Tagen verletzen: Es muss mindestens ein 30 Tage altes Backup vorhanden sein, bevor ein älteres entfernt werden kann. Archiviertes WAL, das älter als das älteste verbleibende vollständige Backup ist, wird automatisch entfernt, sofern repo-retention-archive-type und repo-retention-archive nicht ausdrücklich gesetzt sind.
Bei count werden vollständige Backups entfernt, die über die durch repo-retention-full festgelegte Anzahl hinausgehen. Steht beispielsweise repo-retention-full auf 4 und wird ein fünftes vollständiges Backup abgeschlossen, wird das älteste entfernt, sodass die Anzahl bei 4 bleibt.
Ein Backup muss erfolgreich abgeschlossen sein, bevor es für die Aufbewahrung zählt. Steht beispielsweise repo-retention-full-type auf count und repo-retention-full auf 2, müssen 3 abgeschlossene vollständige Backups vorhanden sein, bevor das älteste entfernt wird.
Option für die Aufbewahrung des Backup-Verlaufs (--repo-retention-history)
Aufbewahrungsdauer der Manifeste im Backup-Verlauf in Tagen.
Nach Abschluss eines Backups wird eine Kopie seines Manifests im Pfad backup.history gespeichert. Standardmäßig werden diese Dateien nie entfernt, da sie für Auswertungen nützlich sind, etwa um das Wachstum von Backups und WAL im Zeitverlauf zu messen.
Mit repo-retention-history die Anzahl der Tage festlegen, für die Manifeste im Backup-Verlauf aufbewahrt werden. Noch nicht entfernte Backups bleiben stets im Verlauf erhalten. Mit repo-retention-history=0 wird der Verlauf nur für solche Backups aufbewahrt.
Wird das Verlaufsmanifest eines vollständigen Backups entfernt, werden auch die Verlaufsmanifeste aller zugehörigen differenziellen und inkrementellen Backups entfernt.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für symbolische Links im Repository (--repo-symlink)
Symbolische Links innerhalb des Repositorys erstellen.
Aktiviert das Erstellen der symbolischen Links für latest und Tablespaces. Diese Links sind vor allem nützlich, wenn Snapshots für eine Recovery direkt im Repository verwendet werden, was selten vorkommt.
Obwohl diese Funktion für die meisten Benutzer wahrscheinlich nicht nützlich ist, bleibt sie aus Kompatibilitätsgründen standardmäßig aktiviert. Bei POSIX-ähnlichen Speichern ohne Unterstützung für symbolische Links kann es jedoch sinnvoll sein, sie zu deaktivieren.
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
Stanza-Optionen
Option für die PostgreSQL-Datenbank (--pg-database)
PostgreSQL-Datenbank.
Name der Datenbank für Verbindungen zu PostgreSQL. Meist ist der Standardwert die beste Wahl, doch manche Installationen enthalten diese Datenbank möglicherweise nicht.
Aus Kompatibilitätsgründen wird die Umgebungsvariable PGDATABASE ignoriert.
Option für den PostgreSQL-Host (--pg-host)
PostgreSQL-Host für die Ausführung auf einem entfernten System.
Für Backups, bei denen PostgreSQL-Host und Repository-Host unterschiedliche Systeme sind.
Veralteter Name: db-host
Option für die CA-Datei des PostgreSQL-Hosts (--pg-host-ca-file)
Datei mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des PostgreSQL-Hosts (--pg-host-ca-path)
Pfad mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des PostgreSQL-Hosts (--pg-host-cert-file)
Zertifikatdatei für den PostgreSQL-Host.
Wird an den PostgreSQL-Host gesendet, um die Identität des Clients nachzuweisen.
Option für den Befehl auf dem PostgreSQL-Host (--pg-host-cmd)
pgBackRest-Befehl auf dem PostgreSQL-Host.
Nur erforderlich, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem PostgreSQL-Host unterschiedlich ist. Ohne Angabe wird auf dem PostgreSQL-Host derselbe Befehl wie lokal verwendet.
Veralteter Name: db-cmd
Option für die Konfiguration des PostgreSQL-Hosts (--pg-host-config)
pgBackRest-Konfigurationsdatei auf dem Datenbank-Host.
Legt den Speicherort der Konfigurationsdatei auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn die Datei dort an einem anderen Ort liegt als die lokale Konfigurationsdatei.
Veralteter Name: db-config
Option für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host (--pg-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Datenbank-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des PostgreSQL-Hosts (--pg-host-config-path)
pgBackRest-Konfigurationspfad auf dem Datenbank-Host.
Legt den Konfigurationspfad auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des PostgreSQL-Hosts (--pg-host-key-file)
Schlüsseldatei für den PostgreSQL-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des PostgreSQL-Hosts (--pg-host-port)
Port des PostgreSQL-Hosts, wenn pg-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des PostgreSQL-Hosts angeben.
HINWEIS: Bei
pg-host-type=sshgibt es keinen Standardwert fürpg-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: db-ssh-port
Option für den Protokolltyp des PostgreSQL-Hosts (--pg-host-type)
Protokolltyp für den PostgreSQL-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem PostgreSQL-Host (--pg-host-user)
Anmeldebenutzer auf dem PostgreSQL-Host, wenn pg-host gesetzt ist.
Unter diesem Benutzer läuft auch der entfernte pgBackRest-Prozess, und er baut die Verbindungen zu PostgreSQL auf. Damit dies korrekt funktioniert, sollte er Eigentümer des PostgreSQL-Datenbankclusters sein. Üblicherweise ist dies postgres, der Standardwert.
Veralteter Name: db-user
Option für den PostgreSQL-Pfad (--pg-path)
PostgreSQL-Datenverzeichnis.
Dieser Pfad sollte dem von PostgreSQL gemeldeten data_directory entsprechen. Obwohl sich der Wert an verschiedenen Stellen auslesen lässt, ist eine ausdrückliche Angabe ratsam, falls diese Quellen bei einer Wiederherstellung oder einem Offline-Backup nicht verfügbar sind.
Bei jedem Online-Backup wird pg-path mit dem von PostgreSQL gemeldeten Wert verglichen. Die Option sollte daher immer aktuell sein.
Veralteter Name: db-path
Option für den PostgreSQL-Port (--pg-port)
PostgreSQL-Port.
Port, auf dem PostgreSQL läuft. Dieser muss normalerweise nicht angegeben werden, da die meisten PostgreSQL-Cluster den Standardport verwenden.
Veralteter Name: db-port
Option für den PostgreSQL-Socket-Pfad (--pg-socket-path)
Pfad zum PostgreSQL-Unix-Socket.
Das beim Start von PostgreSQL angegebene Unix-Socket-Verzeichnis. pgBackRest sucht automatisch am üblichen Speicherort des Betriebssystems. Diese Einstellung ist daher normalerweise nur erforderlich, wenn das Socket-Verzeichnis ausdrücklich über unix_socket_directories in postgresql.conf geändert wurde.
Veralteter Name: db-socket-path
Option für den PostgreSQL-Datenbankbenutzer (--pg-user)
PostgreSQL-Datenbankbenutzer.
Datenbankbenutzername für Verbindungen zu PostgreSQL. Ohne Angabe verbindet sich pgBackRest mit dem lokalen Betriebssystembenutzer oder mit PGUSER.
5 - Prüfbefehl (check)
check.Der Befehl check prüft, ob pgBackRest und die Einstellung archive_command für Archivierung und Backups der angegebenen Stanza korrekt konfiguriert sind. Er versucht, alle Repositorys und Datenbanken zu prüfen, die für den Host konfiguriert sind, auf dem er läuft. Dabei erkennt er Fehlkonfigurationen, insbesondere bei der Archivierung, die zu unvollständigen Backups führen, weil erforderliche WAL-Segmente das Archiv nicht erreicht haben. Der Befehl kann auf dem PostgreSQL- oder dem Repository-Host ausgeführt werden. Auch die Ausführung auf dem Standby-Host ist möglich. Da dort jedoch pg_switch_xlog()/pg_switch_wal() nicht ausgeführt werden können, wird in diesem Fall nur die Repository-Konfiguration geprüft.
Um PostgreSQL zur Archivierung eines WAL-Segments zu zwingen, werden pg_create_restore_point('pgBackRest Archive Check') und pg_switch_xlog()/pg_switch_wal() aufgerufen.
Befehlsoptionen
Option zur Archivprüfung (--archive-check)
Vor Abschluss des Backups prüfen, ob sich die WAL-Segmente im Archiv befinden.
Prüft, ob alle für ein konsistentes Backup erforderlichen WAL-Segmente im WAL-Archiv vorhanden sind. Es empfiehlt sich, die Standardeinstellung beizubehalten, sofern keine andere Archivierungsmethode verwendet wird.
Diese Option muss aktiviert sein, wenn archive-copy aktiviert ist.
Option zur Prüfung des Archivierungsmodus (--archive-mode-check)
Die PostgreSQL-Einstellung archive_mode prüfen.
Diese standardmäßig aktivierte Option verbietet die PostgreSQL-Einstellung archive_mode=always.
Von einem Standby-Server übertragene WAL-Segmente können logisch mit denen des Primärservers übereinstimmen, aber andere Prüfsummen aufweisen. Zur Vermeidung von Konflikten wird empfohlen, die Archivierung aus mehreren Quellen zu unterbinden.
ACHTUNG:
Bei deaktivierter Option muss unbedingt sichergestellt werden, dass nur ein Archivierer mit dem Befehl archive-push in das Repository schreibt.
Option für das Archivierungszeitlimit (--archive-timeout)
Archivierungszeitlimit.
Maximale Wartezeit in Sekunden festlegen, bis ein einzelnes WAL-Segment das Archiv-Repository von pgBackRest erreicht. Dieses Zeitlimit gilt für die Befehle check und backup, wenn sie auf die Archivierung der WAL-Segmente warten, die für ein konsistentes Backup erforderlich sind.
Option für Backups vom Standby (--backup-standby)
Backup vom Standby-Cluster erstellen.
Backups vom Standby aktivieren, um die Last auf dem Primärcluster zu verringern. Für diese Option müssen sowohl der Primär- als auch der Standby-Host konfiguriert sein.
Die folgenden Modi werden unterstützt:
y- Für das Backup ist ein Standby erforderlich.prefer- Backup vom Standby erstellen, falls verfügbar, andernfalls vom Primärserver.n- Backup ausschließlich vom Primärserver erstellen.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das Datenbankzeitlimit (--db-timeout)
Zeitlimit für Datenbankabfragen.
Legt das Zeitlimit für Datenbankabfragen in Sekunden fest. Dazu gehören auch die Funktionen zum Starten und Stoppen des Backups, die jeweils viel Zeit benötigen können. Daher sollte das Zeitlimit hoch bleiben, sofern nicht bekannt ist, dass diese Funktionen schnell zurückkehren, etwa wenn start-fast=y gesetzt ist und bekannt ist, dass der Datenbankcluster während des Backups nur wenige WAL-Segmente erzeugt.
HINWEIS: Der Wert von
db-timeoutmuss kleiner sein als der vonprotocol-timeout.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
Stanza-Optionen
Option für die PostgreSQL-Datenbank (--pg-database)
PostgreSQL-Datenbank.
Name der Datenbank für Verbindungen zu PostgreSQL. Meist ist der Standardwert die beste Wahl, doch manche Installationen enthalten diese Datenbank möglicherweise nicht.
Aus Kompatibilitätsgründen wird die Umgebungsvariable PGDATABASE ignoriert.
Option für den PostgreSQL-Host (--pg-host)
PostgreSQL-Host für die Ausführung auf einem entfernten System.
Für Backups, bei denen PostgreSQL-Host und Repository-Host unterschiedliche Systeme sind.
Veralteter Name: db-host
Option für die CA-Datei des PostgreSQL-Hosts (--pg-host-ca-file)
Datei mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des PostgreSQL-Hosts (--pg-host-ca-path)
Pfad mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des PostgreSQL-Hosts (--pg-host-cert-file)
Zertifikatdatei für den PostgreSQL-Host.
Wird an den PostgreSQL-Host gesendet, um die Identität des Clients nachzuweisen.
Option für den Befehl auf dem PostgreSQL-Host (--pg-host-cmd)
pgBackRest-Befehl auf dem PostgreSQL-Host.
Nur erforderlich, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem PostgreSQL-Host unterschiedlich ist. Ohne Angabe wird auf dem PostgreSQL-Host derselbe Befehl wie lokal verwendet.
Veralteter Name: db-cmd
Option für die Konfiguration des PostgreSQL-Hosts (--pg-host-config)
pgBackRest-Konfigurationsdatei auf dem Datenbank-Host.
Legt den Speicherort der Konfigurationsdatei auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn die Datei dort an einem anderen Ort liegt als die lokale Konfigurationsdatei.
Veralteter Name: db-config
Option für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host (--pg-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Datenbank-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des PostgreSQL-Hosts (--pg-host-config-path)
pgBackRest-Konfigurationspfad auf dem Datenbank-Host.
Legt den Konfigurationspfad auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des PostgreSQL-Hosts (--pg-host-key-file)
Schlüsseldatei für den PostgreSQL-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des PostgreSQL-Hosts (--pg-host-port)
Port des PostgreSQL-Hosts, wenn pg-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des PostgreSQL-Hosts angeben.
HINWEIS: Bei
pg-host-type=sshgibt es keinen Standardwert fürpg-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: db-ssh-port
Option für den Protokolltyp des PostgreSQL-Hosts (--pg-host-type)
Protokolltyp für den PostgreSQL-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem PostgreSQL-Host (--pg-host-user)
Anmeldebenutzer auf dem PostgreSQL-Host, wenn pg-host gesetzt ist.
Unter diesem Benutzer läuft auch der entfernte pgBackRest-Prozess, und er baut die Verbindungen zu PostgreSQL auf. Damit dies korrekt funktioniert, sollte er Eigentümer des PostgreSQL-Datenbankclusters sein. Üblicherweise ist dies postgres, der Standardwert.
Veralteter Name: db-user
Option für den PostgreSQL-Pfad (--pg-path)
PostgreSQL-Datenverzeichnis.
Dieser Pfad sollte dem von PostgreSQL gemeldeten data_directory entsprechen. Obwohl sich der Wert an verschiedenen Stellen auslesen lässt, ist eine ausdrückliche Angabe ratsam, falls diese Quellen bei einer Wiederherstellung oder einem Offline-Backup nicht verfügbar sind.
Bei jedem Online-Backup wird pg-path mit dem von PostgreSQL gemeldeten Wert verglichen. Die Option sollte daher immer aktuell sein.
Veralteter Name: db-path
Option für den PostgreSQL-Port (--pg-port)
PostgreSQL-Port.
Port, auf dem PostgreSQL läuft. Dieser muss normalerweise nicht angegeben werden, da die meisten PostgreSQL-Cluster den Standardport verwenden.
Veralteter Name: db-port
Option für den PostgreSQL-Socket-Pfad (--pg-socket-path)
Pfad zum PostgreSQL-Unix-Socket.
Das beim Start von PostgreSQL angegebene Unix-Socket-Verzeichnis. pgBackRest sucht automatisch am üblichen Speicherort des Betriebssystems. Diese Einstellung ist daher normalerweise nur erforderlich, wenn das Socket-Verzeichnis ausdrücklich über unix_socket_directories in postgresql.conf geändert wurde.
Veralteter Name: db-socket-path
Option für den PostgreSQL-Datenbankbenutzer (--pg-user)
PostgreSQL-Datenbankbenutzer.
Datenbankbenutzername für Verbindungen zu PostgreSQL. Ohne Angabe verbindet sich pgBackRest mit dem lokalen Betriebssystembenutzer oder mit PGUSER.
6 - Befehl zum Entfernen abgelaufener Backups (expire)
expire.pgBackRest rotiert vollständige Backups je nach Art der Aufbewahrung anhand einer Anzahl oder eines Zeitraums. Bei einer Anzahl richtet sich die Bereinigung danach, wie viele Backups aufbewahrt werden müssen, nicht nach ihrem Erstellungszeitpunkt. Differenzielle Backups werden anhand ihrer Anzahl aufbewahrt, aber immer entfernt, sobald das vollständige Backup entfernt wird, von dem sie abhängen. Inkrementelle Backups werden nie eigenständig anhand von Aufbewahrungsregeln entfernt, sondern immer zusammen mit dem zugehörigen vollständigen oder differenziellen Backup. Einzelheiten und Beispiele finden Sie unter Aufbewahrung vollständiger Backups und Aufbewahrung differenzieller Backups .
Archiviertes WAL bleibt standardmäßig für noch nicht entfernte Backups erhalten. Mit den retention-archive-Optionen lässt sich dies pro Repository ändern, was jedoch nicht empfohlen wird. Einzelheiten und Beispiele finden Sie unter Archivaufbewahrung .
Der Befehl expire läuft automatisch nach jedem erfolgreichen Backup und kann auch vom Benutzer ausgeführt werden. Bei manueller Ausführung erfolgt die Bereinigung gemäß den Aufbewahrungseinstellungen jedes konfigurierten Repositorys. Mit --repo wird nur das angegebene Repository bereinigt. Der Benutzer kann die Bereinigung mit --set auf einen bestimmten Backup-Satz begrenzen. Ohne --repo werden dabei alle Repositorys durchsucht und alle passenden Backup-Sätze entfernt. Bei jeder Ausführung von expire werden außerdem die Regeln zur Archivaufbewahrung geprüft und angewendet.
Befehlsoptionen
Option zum Entfernen älterer Archivsegmente (--archive-expire-before)
WAL-Archiv vor dem angegebenen WAL-Segment entfernen.
WAL-Segmente vor dem angegebenen Segment entfernen, jedoch nur, wenn sie von keinem aufbewahrten Backup benötigt werden. Dies sind Segmente vor dem frühesten aufzubewahrenden Backup-Satz oder beliebige Segmente, wenn das Repository kein Backup enthält. Das angegebene Segment und alle nachfolgenden bleiben erhalten. Dies entspricht dem Wert, den PostgreSQL über %r an archive_cleanup_command übergibt.
Diese Option ist vor allem für reine Archiv-Repositorys ohne Backups vorgesehen. Sie kann auch Speicherplatz im WAL-Archiv für Segmente vor dem ersten Backup freigeben, wenn die Aufbewahrungsbedingungen für vollständige Backups noch nicht erfüllt sind und deshalb keine Archivbereinigung ausgelöst wird.
Option zum Entfernen des ältesten Backup-Satzes (--oldest)
Den ältesten entfernbaren Backup-Satz entfernen.
Entfernt den ältesten vollständigen Backup-Satz, der gelöscht werden kann, wobei mindestens ein neueres vollständiges Backup verbleibt. Dies entspricht einer manuellen Verringerung der Aufbewahrungsanzahl um eins, wird aber automatisch berechnet. Alle zugehörigen differenziellen und inkrementellen Backups werden ebenfalls entfernt.
Dabei wird auch die Archivaufbewahrung vorübergehend angepasst, damit WAL für die entfernten Backups im selben Lauf gelöscht werden kann.
Ist die Aufbewahrung vollständiger Backups zeitbasiert konfiguriert (mit --repo-retention-full-type=time), verwendet --oldest für diesen Lauf eine anzahlbasierte Bereinigung.
WARNUNG:
Diese Option kann nicht mit --set kombiniert werden.
Option zur Auswahl des Backup-Satzes (--set)
Zu entfernender Backup-Satz.
Der angegebene Backup-Satz, also das angegebene Backup-Label und gegebenenfalls alle davon abhängigen Backups, wird unabhängig von den Aufbewahrungsregeln entfernt. Mindestens ein vollständiges Backup muss jedoch im Repository verbleiben.
WARNUNG:
Diese Option mit äußerster Vorsicht verwenden: Für den angegebenen Backup-Satz entfernt sie dauerhaft alle Backups sowie alle Archive, die nicht für die Konsistenz eines Backups erforderlich sind, aus dem pgBackRest-Repository. Dies kann PITR unmöglich machen. Sind --repo-retention-full und/oder --repo-retention-archive konfiguriert, wird empfohlen, diese Werte während einer solchen außerplanmäßigen Bereinigung auf den Höchstwert zu setzen, um unbeabsichtigtes Entfernen von Archiven zu verhindern.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für einen Probelauf (--dry-run)
Einen Probelauf des Befehls ausführen.
Die Option --dry-run ist nur in der Befehlszeile verfügbar. Mit ihr lässt sich ermitteln, welche Änderungen der Befehl vornehmen würde, ohne diese tatsächlich auszuführen.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für die Archivaufbewahrung (--repo-retention-archive)
Anzahl der Backups, für die lückenloses WAL aufbewahrt wird.
HINWEIS: WAL-Segmente, die für ein konsistentes Backup erforderlich sind, bleiben unabhängig von dieser Einstellung immer bis zum Entfernen des Backups erhalten.
Ist dieser Wert nicht gesetzt und ist repo-retention-full-type auf count gesetzt (Standardeinstellung), richtet sich die Archivbereinigung nach repo-retention-full beziehungsweise repo-retention-diff, wenn repo-retention-archive-type auf full beziehungsweise diff gesetzt ist. So wird WAL nur für bereits entfernte Backups gelöscht. Ist repo-retention-full-type auf time gesetzt, werden standardmäßig Archive entfernt, die älter sind als das älteste vollständige Backup, das nach Anwendung von repo-retention-full aufbewahrt wird.
Diese Option muss gesetzt sein, wenn repo-retention-archive-type auf incr gesetzt ist. Bei knappem Speicherplatz kann sie zusammen mit repo-retention-archive-type verwendet werden, um WAL-Segmente frühzeitig zu entfernen. Damit ist jedoch keine PITR mehr aus Backups möglich, deren WAL entfernt wurde. Dies wird daher nicht empfohlen.
Veralteter Name: retention-archive
Option für den Typ der Archivaufbewahrung (--repo-retention-archive-type)
Backup-Typ für die WAL-Aufbewahrung.
Bei full bewahrt pgBackRest Archivprotokolle für die durch repo-retention-archive festgelegte Anzahl vollständiger Backups auf. Bei diff (differenziell) werden sie für die durch repo-retention-archive festgelegte Anzahl vollständiger und differenzieller Backups aufbewahrt. War das letzte Backup vollständig, wird es für repo-retention also als differenzielles Backup gezählt. Bei incr (inkrementell) bewahrt pgBackRest Archivprotokolle für die durch repo-retention-archive festgelegte Anzahl vollständiger, differenzieller und inkrementeller Backups auf. Es wird empfohlen, die Standardeinstellung beizubehalten, bei der WAL nur zusammen mit vollständigen Backups entfernt wird.
Veralteter Name: retention-archive-type
Option für die Aufbewahrung differenzieller Backups (--repo-retention-diff)
Anzahl der aufzubewahrenden differenziellen Backups.
Wird ein differenzielles Backup entfernt, werden auch alle zugehörigen inkrementellen Backups entfernt. Ohne Angabe bleiben alle differenziellen Backups erhalten, bis die vollständigen Backups entfernt werden, von denen sie abhängen.
Bei der Bereinigung zählen vollständige Backups zur Anzahl der differenziellen Backups. Dadurch müssen in den meisten Fällen etwas weniger differenzielle Backups aufbewahrt werden.
Veralteter Name: retention-diff
Option für die Aufbewahrung vollständiger Backups (--repo-retention-full)
Anzahl oder Aufbewahrungsdauer vollständiger Backups.
Wird ein vollständiges Backup entfernt, werden auch alle zugehörigen differenziellen und inkrementellen Backups entfernt. Ist diese Option nicht gesetzt, wird eine Warnung ausgegeben. Für eine unbegrenzte Aufbewahrung die Option auf den Höchstwert setzen.
Veralteter Name: retention-full
Option für die Art der Aufbewahrung vollständiger Backups (--repo-retention-full-type)
Art der Aufbewahrung vollständiger Backups.
Bestimmt, ob repo-retention-full einen Zeitraum in Tagen oder die Anzahl der aufzubewahrenden vollständigen Backups angibt.
Bei time werden vollständige Backups, die älter als repo-retention-full sind, aus dem Repository entfernt, wenn mindestens ein weiteres Backup vorhanden ist, dessen Alter mindestens dem Wert von repo-retention-full entspricht. Steht beispielsweise repo-retention-full auf 30 Tage und gibt es 2 vollständige Backups, eines 25 Tage und eines 35 Tage alt, wird keines entfernt. Würde das 35 Tage alte Backup entfernt, bliebe nur das 25 Tage alte übrig. Dies würde die Aufbewahrungsregel von 30 Tagen verletzen: Es muss mindestens ein 30 Tage altes Backup vorhanden sein, bevor ein älteres entfernt werden kann. Archiviertes WAL, das älter als das älteste verbleibende vollständige Backup ist, wird automatisch entfernt, sofern repo-retention-archive-type und repo-retention-archive nicht ausdrücklich gesetzt sind.
Bei count werden vollständige Backups entfernt, die über die durch repo-retention-full festgelegte Anzahl hinausgehen. Steht beispielsweise repo-retention-full auf 4 und wird ein fünftes vollständiges Backup abgeschlossen, wird das älteste entfernt, sodass die Anzahl bei 4 bleibt.
Ein Backup muss erfolgreich abgeschlossen sein, bevor es für die Aufbewahrung zählt. Steht beispielsweise repo-retention-full-type auf count und repo-retention-full auf 2, müssen 3 abgeschlossene vollständige Backups vorhanden sein, bevor das älteste entfernt wird.
Option für die Aufbewahrung des Backup-Verlaufs (--repo-retention-history)
Aufbewahrungsdauer der Manifeste im Backup-Verlauf in Tagen.
Nach Abschluss eines Backups wird eine Kopie seines Manifests im Pfad backup.history gespeichert. Standardmäßig werden diese Dateien nie entfernt, da sie für Auswertungen nützlich sind, etwa um das Wachstum von Backups und WAL im Zeitverlauf zu messen.
Mit repo-retention-history die Anzahl der Tage festlegen, für die Manifeste im Backup-Verlauf aufbewahrt werden. Noch nicht entfernte Backups bleiben stets im Verlauf erhalten. Mit repo-retention-history=0 wird der Verlauf nur für solche Backups aufbewahrt.
Wird das Verlaufsmanifest eines vollständigen Backups entfernt, werden auch die Verlaufsmanifeste aller zugehörigen differenziellen und inkrementellen Backups entfernt.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für symbolische Links im Repository (--repo-symlink)
Symbolische Links innerhalb des Repositorys erstellen.
Aktiviert das Erstellen der symbolischen Links für latest und Tablespaces. Diese Links sind vor allem nützlich, wenn Snapshots für eine Recovery direkt im Repository verwendet werden, was selten vorkommt.
Obwohl diese Funktion für die meisten Benutzer wahrscheinlich nicht nützlich ist, bleibt sie aus Kompatibilitätsgründen standardmäßig aktiviert. Bei POSIX-ähnlichen Speichern ohne Unterstützung für symbolische Links kann es jedoch sinnvoll sein, sie zu deaktivieren.
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
7 - Hilfebefehl (help)
help.Die Hilfe ist in drei Ebenen gegliedert. Ohne Angabe eines Befehls wird die allgemeine Hilfe angezeigt. Wird ein Befehl angegeben (z. B. pgbackrest help backup), erscheint eine vollständige Beschreibung des Befehls mit einer Liste der zulässigen Optionen. Wird zusätzlich eine Option angegeben (z. B. pgbackrest help backup type), erscheint eine vollständige Beschreibung dieser Option für den jeweiligen Befehl.
Befehlsoptionen
Option zur Anzeige der Hilfe (--help)
Hilfe anzeigen.
Zeigt die Hilfe auch dann an, wenn der Befehl help nicht angegeben wurde, und hat Vorrang vor der Option --version.
Option zur Anzeige der Version (--version)
Version anzeigen.
Zeigt die Version auch dann an, wenn weder der Befehl version noch help angegeben wurde.
8 - Informationsbefehl (info)
info.Der Befehl info arbeitet mit einer einzelnen Stanza oder allen Stanzas. Standardmäßig wird eine für Menschen lesbare Textzusammenfassung der Backups für die angeforderten Stanzas ausgegeben. Dieses Format kann sich mit jeder Version ändern.
Für maschinenlesbare Ausgabe --output=json verwenden. Die JSON-Ausgabe enthält deutlich mehr Informationen als die Textausgabe und bleibt stabil, sofern kein Fehler gefunden wird.
Für eine schnellere Ausführung die Ausgabe mit --detail-level=progress auf Fortschrittsinformationen beschränken. Dabei werden alle Prüfungen außer der Verfügbarkeit der Stanza übersprungen.
Jede Stanza hat einen eigenen Abschnitt. Mit --stanza lässt sich die Ausgabe auf eine einzelne Stanza begrenzen. Der status gibt einen kurzen Überblick über ihren Zustand. Bei ok funktioniert pgBackRest normal. Sind mehrere Repositorys vorhanden, zeigt mixed an, dass die Stanza in mindestens einem Repository nicht in einem ordnungsgemäßen Zustand ist; dieser wird dann für jedes Repository einzeln beschrieben. Tritt in einem Repository ein Fehler auf, der keinem bekannten Fehlercode entspricht, wird der Code other verwendet und der Fehler vollständig beschrieben. wal archive min/max zeigt das kleinste und größte derzeit im Archiv gespeicherte WAL-Segment. Bei mehreren Repositorys wird dies über alle Repositorys hinweg ermittelt, sofern nicht --repo gesetzt ist. Aufgrund der Archivaufbewahrungsregeln oder anderer Ursachen können Lücken bestehen.
Neben status erscheinen die Meldungen backup/expire running und/oder restore running, wenn einer dieser Befehle gerade auf dem Host läuft. In der Textausgabe wird auch der Fortschritt je Repository angezeigt; die JSON-Ausgabe enthält dafür ein Array repo.
Backups werden vom ältesten zum neuesten angezeigt. Das älteste ist immer ein vollständiges Backup, erkennbar am F am Ende seines Labels. Das neueste kann vollständig, differenziell (Endung D) oder inkrementell (Endung I) sein.
timestamp start/stop bezeichnet den Zeitraum, in dem das Backup lief. Mit timestamp stop lässt sich bestimmen, welches Backup für eine Point-in-Time-Recovery verwendet werden soll. Weitere Informationen finden Sie im Abschnitt Point-in-Time-Recovery
.
wal start/stop bezeichnet den WAL-Bereich, der bei der Wiederherstellung für einen konsistenten Datenbankzustand erforderlich ist. Der Befehl backup stellt vor seinem Abschluss sicher, dass dieser Bereich im Archiv vorhanden ist.
database size ist die vollständige unkomprimierte Größe der Datenbank. database backup size ist dagegen die Datenmenge, die tatsächlich gesichert werden muss. Bei vollständigen Backups stimmen beide Werte überein.
repo gibt an, in welchem Repository dieses Backup liegt. backup set size umfasst alle Dateien dieses Backups sowie alle Dateien referenzierter Backups im Repository, die zur Wiederherstellung der Datenbank aus diesem Backup erforderlich sind. backup size umfasst nur die Dateien dieses Backups. Auch diese Werte sind bei vollständigen Backups gleich. Ist die Komprimierung in pgBackRest aktiviert, beziehen sich die Repository-Größen auf die komprimierten Dateigrößen.
backup reference total fasst die Liste zusätzlicher Backups zusammen, die zur Wiederherstellung dieses Backups benötigt werden. Mit --set lässt sich die vollständige Referenzliste anzeigen.
Befehlsoptionen
Option für den Detailgrad (--detail-level)
Detailgrad der Ausgabe.
Die folgenden Stufen werden unterstützt:
progress- Nur den aktuellen Fortschritt von Backup und Bereinigung ausgeben. Diese Stufe kann nicht zusammen mit--setverwendet werden.full- Vollständige Informationen ausgeben.
Ausgabeoption (--output)
Ausgabeformat.
Die folgenden Ausgabetypen werden unterstützt:
text- Für Menschen lesbare Zusammenfassung der Backup-Informationen.json- Vollständige maschinenlesbare Backup-Informationen im JSON-Format.
Option zur Auswahl des Backup-Satzes (--set)
Backup-Satz, zu dem Details angezeigt werden sollen.
Die Details umfassen eine vollständige Liste zusätzlicher Backups, die zur Wiederherstellung benötigt werden, die Datenbanken im Backup-Satz mit ihren OIDs (ohne Template-Datenbanken), Tablespaces mit ihren OIDs und den standardmäßigen Wiederherstellungszielen sowie symbolische Links mit den Zielen, an denen sie bei Angabe von --link-all wiederhergestellt werden.
Option für den Typ (--type)
Nach Backup-Typ filtern.
Die Ausgabe nach einem der folgenden Backup-Typen filtern:
full- Nur vollständige Backups ausgeben.diff- Nur differenzielle Backups ausgeben.incr- Nur inkrementelle Backups ausgeben.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Zielzeitpunkt des Repositorys (--repo-target-time)
Zielzeitpunkt für das Repository.
Der Zielzeitpunkt legt fest, welchen Stand des Repositorys Befehle auf versioniertem Speicher lesen. So lässt sich das Repository zu einem früheren Zeitpunkt lesen, um Daten wiederherzustellen, die versehentlich durch Benutzer oder durch Schadsoftware gelöscht oder beschädigt wurden.
S3, GCS und Azure unterstützen versionierten Speicher, aktivieren ihn aber im Allgemeinen nicht standardmäßig. Neben der Versionierung kann es sinnvoll sein, bei S3 die Objektsperre und bei GCS oder Azure das vorläufige Löschen zu aktivieren.
Wenn repo-target-time angegeben wird, muss auch die Option repo angegeben werden. Wahrscheinlich unterstützen nicht alle Repository-Typen die Versionierung. Im Allgemeinen ist es sinnvoll, für die Wiederherstellung ein einzelnes Repository auszuwählen.
Beim Vergleich werden Speicherzeitstempel berücksichtigt, die <= dem angegebenen Zeitstempel sind. Enthaltene Millisekunden werden abgeschnitten.
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
9 - Befehl zum Lesen aus dem Repository (repo-get)
repo-get.Ähnelt dem Unix-Befehl cat, funktioniert aber mit jedem unterstützten Repository-Typ. Dieser Befehl benötigt einen vollständigen Dateinamen und ist hauptsächlich für Verwaltung, Untersuchung und Tests gedacht. Er ist kein erforderlicher Bestandteil einer normalen pgBackRest-Einrichtung.
Ist das Repository verschlüsselt, entschlüsselt repo-get die Datei automatisch. Dateien werden nicht automatisch dekomprimiert. Die Ausgabe kann jedoch per Pipe an den passenden Dekomprimierungsbefehl weitergegeben werden, etwa gzip -d.
Sind mehrere Repositorys konfiguriert, verwendet der Befehl standardmäßig das Repository mit der höchsten Priorität (z. B. repo1), sofern nicht --repo angegeben wird.
Befehlsoptionen
Option zum Ignorieren fehlender Dateien (--ignore-missing)
Eine fehlende Quelldatei ignorieren.
Bei fehlender Quelldatei mit Status 1 beenden, aber keinen Fehler auslösen.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Rohdaten (--raw)
Daten nicht umwandeln.
Daten für den aktuellen Befehl nicht umwandeln, also etwa nicht verschlüsseln oder dekomprimieren.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Zielzeitpunkt des Repositorys (--repo-target-time)
Zielzeitpunkt für das Repository.
Der Zielzeitpunkt legt fest, welchen Stand des Repositorys Befehle auf versioniertem Speicher lesen. So lässt sich das Repository zu einem früheren Zeitpunkt lesen, um Daten wiederherzustellen, die versehentlich durch Benutzer oder durch Schadsoftware gelöscht oder beschädigt wurden.
S3, GCS und Azure unterstützen versionierten Speicher, aktivieren ihn aber im Allgemeinen nicht standardmäßig. Neben der Versionierung kann es sinnvoll sein, bei S3 die Objektsperre und bei GCS oder Azure das vorläufige Löschen zu aktivieren.
Wenn repo-target-time angegeben wird, muss auch die Option repo angegeben werden. Wahrscheinlich unterstützen nicht alle Repository-Typen die Versionierung. Im Allgemeinen ist es sinnvoll, für die Wiederherstellung ein einzelnes Repository auszuwählen.
Beim Vergleich werden Speicherzeitstempel berücksichtigt, die <= dem angegebenen Zeitstempel sind. Enthaltene Millisekunden werden abgeschnitten.
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
10 - Befehl zum Auflisten des Repository-Inhalts (repo-ls)
repo-ls.Ähnelt dem Unix-Befehl ls, funktioniert aber mit jedem unterstützten Repository-Typ. Dieser Befehl akzeptiert einen absoluten Pfad oder einen Pfad relativ zum mit --repo-path angegebenen Repository-Pfad. Er ist hauptsächlich für Verwaltung, Untersuchung und Tests gedacht und kein erforderlicher Bestandteil einer normalen pgBackRest-Einrichtung.
Die standardmäßige Textausgabe enthält einen Dateinamen pro Zeile. Mit --output=json ist eine JSON-Ausgabe verfügbar.
Sind mehrere Repositorys konfiguriert, verwendet der Befehl standardmäßig das Repository mit der höchsten Priorität (z. B. repo1), sofern nicht --repo angegeben wird.
Befehlsoptionen
Option zum Filtern der Ausgabe (--filter)
Die Ausgabe mit einem regulären Ausdruck filtern.
Der Filter wird vor der Ausgabe auf die Datei- und Pfadnamen angewendet.
Ausgabeoption (--output)
Ausgabeformat.
Die folgenden Ausgabetypen werden unterstützt:
text- Einfache Liste mit einem Datei-, Link- oder Pfadnamen pro Zeile.json- Detaillierte Informationen zu Dateien, Links und Pfaden im JSON-Format.
Im JSON-Format sind folgende Felder verfügbar:
name- Datei-, Link- oder Pfadname; bei rekursiver Auflistung einschließlich Teilpfad.type-file,pathoderlink.size- Größe in Byte (nur Dateien).time- Zeitpunkt der letzten Änderung (nur Dateien).destination- Linkziel (nur Links).
Option für rekursive Unterpfade (--recurse)
Alle Unterpfade in die Ausgabe aufnehmen.
Alle Unterpfade und ihre Dateien werden in die Ausgabe aufgenommen.
Option zum Sortieren der Ausgabe (--sort)
Die Ausgabe aufsteigend, absteigend oder gar nicht sortieren.
Die folgenden Sortierungen werden unterstützt:
asc- Aufsteigend sortieren.desc- Absteigend sortieren.none- Nicht sortieren.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Zielzeitpunkt des Repositorys (--repo-target-time)
Zielzeitpunkt für das Repository.
Der Zielzeitpunkt legt fest, welchen Stand des Repositorys Befehle auf versioniertem Speicher lesen. So lässt sich das Repository zu einem früheren Zeitpunkt lesen, um Daten wiederherzustellen, die versehentlich durch Benutzer oder durch Schadsoftware gelöscht oder beschädigt wurden.
S3, GCS und Azure unterstützen versionierten Speicher, aktivieren ihn aber im Allgemeinen nicht standardmäßig. Neben der Versionierung kann es sinnvoll sein, bei S3 die Objektsperre und bei GCS oder Azure das vorläufige Löschen zu aktivieren.
Wenn repo-target-time angegeben wird, muss auch die Option repo angegeben werden. Wahrscheinlich unterstützen nicht alle Repository-Typen die Versionierung. Im Allgemeinen ist es sinnvoll, für die Wiederherstellung ein einzelnes Repository auszuwählen.
Beim Vergleich werden Speicherzeitstempel berücksichtigt, die <= dem angegebenen Zeitstempel sind. Enthaltene Millisekunden werden abgeschnitten.
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
11 - Befehl zur Wiederherstellung (restore)
restore.Der Wiederherstellungsbefehl wählt standardmäßig automatisch das neueste Backup aus dem ersten Repository, das Backups enthält (siehe Schnellstart – Ein Backup wiederherstellen
). Die Reihenfolge der Prüfung wird durch pgbackrest.conf bestimmt; beispielsweise wird repo1 vor repo2 geprüft. Mit --repo lässt sich ein bestimmtes Repository auswählen, etwa mit --repo=1. Soll ein anderes als das neueste Backup verwendet werden, kann es mit --set angegeben werden.
Bei PITR mit --type=time oder --type=lsn muss die Zielzeit bzw. die Ziel-LSN mit der Option --target angegeben werden. Ohne --set werden die konfigurierten Repositorys der Reihe nach nach einem Backup durchsucht, dessen Endzeit vor der Zielzeit liegt bzw. dessen End-LSN kleiner oder gleich der Ziel-LSN ist. Wird kein passendes Backup gefunden, meldet pgBackRest sowohl bei --type=time als auch bei --type=lsn einen Fehler; es fällt nicht auf das neueste Backup zurück. Bei anderen PITR-Typen, z. B. xid, muss die Option --set angegeben werden, wenn das Ziel vor dem neuesten Backup liegt. Weitere Informationen und Beispiele finden Sie unter Point-in-Time-Recovery
.
Replikations-Slots werden gemäß der Empfehlung von PostgreSQL nicht aufgenommen. Weitere Informationen bietet Backup des Datenverzeichnisses in der PostgreSQL-Dokumentation.
Befehlsoptionen
Option für den Archivierungsmodus (--archive-mode)
Archivierung auf dem wiederhergestellten Cluster beibehalten oder deaktivieren.
Mit dieser Option lässt sich die Archivierung auf einem wiederhergestellten Cluster beibehalten oder deaktivieren. Dies ist nützlich, wenn der Cluster für bestimmte Arbeiten zum Primärserver hochgestuft werden muss, aber nicht dauerhaft der neue Primärserver werden soll. In diesem Fall ist es nicht ratsam, WAL aus diesem Cluster ins Repository zu übertragen.
Die folgenden Modi werden unterstützt:
off- Archivierung durch Setzen vonarchive_mode=offdeaktivieren.preserve- Die aktuelle Einstellung vonarchive_modebeibehalten.
HINWEIS: Diese Option ist unter PostgreSQL < 12 nicht verfügbar.
Option zum Ausschließen von Datenbanken (--db-exclude)
Wiederherstellung unter Ausschluss der angegebenen Datenbanken.
Ausgeschlossene Datenbanken werden als Sparse-Dateien mit Nullinhalt wiederhergestellt. Dies spart Platz und ermöglicht PostgreSQL dennoch die Recovery. Danach sind diese Datenbanken nicht zugänglich, können aber mit drop database entfernt werden. Die Option --db-exclude kann mehrfach angegeben werden, um mehrere Datenbanken auszuschließen.
In Kombination mit --db-include gilt --db-exclude nur für die standardmäßigen Systemdatenbanken template0, template1 und postgres.
Option zur Auswahl von Datenbanken (--db-include)
Nur die angegebenen Datenbanken wiederherstellen.
Mit dieser Funktion lassen sich gezielt ausgewählte Datenbanken wiederherstellen. Nicht ausdrücklich ausgewählte Datenbanken werden als Sparse-Dateien mit Nullinhalt wiederhergestellt. Dies spart Platz und ermöglicht PostgreSQL dennoch die Recovery. Danach sind die nicht ausgewählten Datenbanken nicht zugänglich, können aber mit drop database entfernt werden.
HINWEIS: Die integrierten Datenbanken
template0,template1undpostgreswerden immer wiederhergestellt, sofern sie nicht ausdrücklich ausgeschlossen sind.
Die Option --db-include kann mehrfach angegeben werden, um mehrere Datenbanken auszuwählen.
Weitere Informationen und Einschränkungen finden Sie unter Ausgewählte Datenbanken wiederherstellen .
Option zum Erzwingen (--force)
Eine Wiederherstellung erzwingen.
Allein verwendet erzwingt diese Option das vollständige Überschreiben der PostgreSQL-Daten- und Tablespace-Pfade. In Kombination mit --delta erfolgt ein Delta-Abgleich anhand von Zeitstempel und Größe statt anhand von Prüfsummen.
Option zur Wiederherstellung aller symbolischen Links (--link-all)
Alle symbolischen Links wiederherstellen.
Standardmäßig werden symbolisch verlinkte Verzeichnisse und Dateien als normale Verzeichnisse und Dateien in $PGDATA wiederhergestellt. Auf einem anderen System als dem Ursprungssystem des Backups ist es möglicherweise nicht sicher, symbolische Links mit ihren ursprünglichen Zielen wiederherzustellen. Diese Option stellt alle symbolischen Links genau so wieder her, wie sie auf dem Ursprungssystem des Backups vorhanden waren.
Option zur Zuordnung von Linkzielen (--link-map)
Das Ziel eines symbolischen Links ändern.
Ermöglicht es, die Zieldatei oder den Zielpfad eines symbolischen Links bei der Wiederherstellung zu ändern. Dies ist bei Systemen hilfreich, deren Speicheraufteilung vom Ursprungssystem des Backups abweicht.
Recovery-Option (--recovery-option)
Eine Option in postgresql.auto.conf oder recovery.conf setzen.
Einzelheiten zu den Optionen von postgresql.auto.conf oder recovery.conf finden Sie unter Serverkonfiguration
. Wählen Sie dort unbedingt Ihre PostgreSQL-Version aus. Diese Option kann mehrfach verwendet werden.
Für PostgreSQL >= 12 werden die Optionen in postgresql.auto.conf geschrieben, für alle anderen Versionen in recovery.conf.
HINWEIS:
restore_commandwird automatisch erzeugt, kann aber mit dieser Option überschrieben werden. Einen eigenenrestore_commandmit Vorsicht angeben, da pgBackRest dafür ausgelegt ist, dies selbst zu übernehmen. Optionen für das Recovery-Ziel wie recovery_target_name und recovery_target_time werden automatisch von pgBackRest erzeugt und sollten nicht mit dieser Option gesetzt werden.
Da pgBackRest PostgreSQL nach dem Schreiben von postgresql.auto.conf oder recovery.conf nicht startet, lassen sich postgresql.auto.conf oder recovery.conf vor einem manuellen Neustart jederzeit bearbeiten und prüfen.
Option zur Auswahl des Backup-Satzes (--set)
Wiederherzustellender Backup-Satz.
Der wiederherzustellende Backup-Satz. Mit latest wird das neueste Backup wiederhergestellt. Andernfalls den Namen des gewünschten Backups angeben.
Option zur Tablespace-Zuordnung (--tablespace-map)
Einen Tablespace im angegebenen Verzeichnis wiederherstellen.
Verschiebt einen Tablespace bei der Wiederherstellung an einen neuen Speicherort. Dies ist nützlich, wenn sich die Tablespace-Pfade auf einem Replikat unterscheiden oder ein aktualisiertes System andere Einhängepunkte verwendet.
Die Speicherorte von Tablespaces werden nicht in pg_tablespace gespeichert. Deshalb können Tablespaces ohne Folgen verschoben werden. Ein Verschieben in data_directory wird jedoch nicht empfohlen und kann Probleme verursachen. Weitere hilfreiche Informationen zum Verschieben von Tablespaces bietet http://www.databasesoup.com/2013/11/moving-tablespaces.html
.
Option zur Zuordnung aller Tablespaces (--tablespace-map-all)
Alle Tablespaces im angegebenen Verzeichnis wiederherstellen.
Tablespaces werden standardmäßig an ihren ursprünglichen Speicherorten wiederhergestellt. Dies lässt sich mit tablespace-map für jeden Tablespace ändern. Manchmal ist es jedoch sinnvoller, alle Tablespaces auf einmal einem neuen Verzeichnis zuzuordnen. Dies ist besonders für Entwicklungs- oder Staging-Systeme nützlich, deren Speicheraufteilung vom Ursprungssystem des Backups abweichen kann.
Der angegebene Pfad dient als übergeordnetes Verzeichnis, unter dem alle Tablespaces des Backups erstellt werden.
ACHTUNG:
Tablespaces, die nach Beginn des Backups erstellt wurden, werden nicht neu zugeordnet. Ist eine Tablespace-Zuordnung erforderlich, nach dem Erstellen eines Tablespaces ein neues Backup erstellen.
Option für das Ziel (--target)
Recovery-Ziel.
Definiert das Recovery-Ziel, wenn --type auf lsn, name, xid oder time gesetzt ist. Liegt das Ziel vor dem neuesten Backup und ist --type weder time noch lsn, den Backup-Satz mit --set angeben.
Option für die Aktion am Ziel (--target-action)
Aktion beim Erreichen des Recovery-Ziels.
Bei hot_standby=on, dem Standard seit PostgreSQL 10, steuert diese Option einheitlich, was der Cluster beim Erreichen des Ziels oder am Ende des WAL-Archivs tut.
Bei hot_standby=off unter PostgreSQL >= 12 verhält sich pause wie shutdown. Bei hot_standby=off unter PostgreSQL < 12 verhält sich pause wie promote.
Die folgenden Aktionen werden unterstützt:
pause- Beim Erreichen des Recovery-Ziels pausieren.promote- Beim Erreichen des Recovery-Ziels zum Primärserver hochstufen und die Timeline wechseln.shutdown- Beim Erreichen des Recovery-Ziels den Server herunterfahren. (PostgreSQL >= 9.5)
Option zum Ausschließen des Ziels (--target-exclusive)
Unmittelbar vor dem Recovery-Ziel anhalten.
Legt fest, ob die Recovery das Ziel ausschließt; standardmäßig wird es eingeschlossen. Die Option ist nur gültig, wenn --type auf lsn, time oder xid gesetzt ist. Beispielsweise schließt --target-exclusive den Inhalt der Transaktion 1007 aus, wenn --type=xid und --target=1007 gesetzt sind. Weitere Informationen bietet die Option recovery_target_inclusive in der PostgreSQL-Dokumentation.
Option für die Ziel-Timeline (--target-timeline)
Recovery entlang einer Timeline durchführen.
Weitere Informationen bietet recovery_target_timeline in der PostgreSQL-Dokumentation.
Option für den Typ (--type)
Recovery-Typ.
Die folgenden Recovery-Typen werden unterstützt:
default- Recovery bis zum Ende des Archivstroms durchführen.immediate- Recovery nur bis zum Erreichen eines konsistenten Datenbankzustands durchführen.lsn- Recovery bis zur mit--targetangegebenen LSN (Log Sequence Number) durchführen. Diese Option wird nur unter PostgreSQL >= 10 unterstützt.name- Recovery bis zum mit--targetangegebenen Wiederherstellungspunkt durchführen.xid- Recovery bis zur mit--targetangegebenen Transaktions-ID durchführen.time- Recovery bis zum mit--targetangegebenen Zeitpunkt durchführen.preserve- Die vorhandene Dateipostgresql.auto.confoderrecovery.confbeibehalten.standby-standby_mode=oninpostgresql.auto.confoderrecovery.confeintragen, damit der Cluster im Standby-Modus startet.none- Wederpostgresql.auto.confnochrecovery.confschreiben. PostgreSQL versucht dann, mit den WAL-Segmenten inpg_xlog/pg_waleinen konsistenten Zustand zu erreichen. Die erforderlichen WAL-Segmente bereitstellen oder sie mitarchive-copyin das Backup aufnehmen.
WARNUNG:
Recovery mit type=none sollte vermieden werden, da am Ende der Recovery die Timeline nicht erhöht wird. Dadurch kann PostgreSQL beispielsweise versuchen, doppelte WAL-Segmente zu archivieren. Diese werden abgelehnt, wodurch sich der Datenträger füllen und PostgreSQL mit einer Panic reagieren kann. Außerdem funktionieren Werkzeuge wie pg_rewind möglicherweise nicht korrekt oder verursachen Datenbeschädigungen.
Der standardmäßige Wiederherstellungswert für type ist bei Offline-Backups none, da bei wal_level=minimal keine Point-in-Time-Recovery möglich ist. Ein ausdrücklich gesetzter type wird jedoch berücksichtigt, da Point-in-Time-Recovery aus Offline-Backups möglich ist, solange wal_level > minimal gilt.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den pgBackRest-Befehl (--cmd)
pgBackRest-Befehl.
pgBackRest kann eine Befehlszeichenfolge erzeugen, etwa wenn der Befehl restore die Einstellung restore_command erzeugt. Dafür wird der Befehl verwendet, mit dem der pgBackRest-Prozess gestartet wurde, sofern nicht die Option cmd angegeben ist.
ACHTUNG:
Das Einbetten des pgBackRest-Befehls in einen Wrapper kann unvorhersehbares Verhalten verursachen und wird nicht empfohlen.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Delta-Option (--delta)
Wiederherstellung oder Backup anhand von Prüfsummen durchführen.
Bei einer Wiederherstellung wird standardmäßig erwartet, dass die PostgreSQL-Daten- und Tablespace-Verzeichnisse vorhanden, aber leer sind. Diese Option führt eine Delta-Wiederherstellung anhand von Prüfsummen durch.
Bei einem Backup verwendet diese Option Prüfsummen anstelle von Zeitstempeln, um zu entscheiden, ob Dateien kopiert werden.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für die maximale Prozessanzahl (--process-max)
Maximale Anzahl der Prozesse für Komprimierung und Übertragung.
Jeder Prozess führt Komprimierung und Übertragung aus, um den Befehl zu beschleunigen. process-max jedoch nicht so hoch setzen, dass die Datenbankleistung beeinträchtigt wird.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Zielzeitpunkt des Repositorys (--repo-target-time)
Zielzeitpunkt für das Repository.
Der Zielzeitpunkt legt fest, welchen Stand des Repositorys Befehle auf versioniertem Speicher lesen. So lässt sich das Repository zu einem früheren Zeitpunkt lesen, um Daten wiederherzustellen, die versehentlich durch Benutzer oder durch Schadsoftware gelöscht oder beschädigt wurden.
S3, GCS und Azure unterstützen versionierten Speicher, aktivieren ihn aber im Allgemeinen nicht standardmäßig. Neben der Versionierung kann es sinnvoll sein, bei S3 die Objektsperre und bei GCS oder Azure das vorläufige Löschen zu aktivieren.
Wenn repo-target-time angegeben wird, muss auch die Option repo angegeben werden. Wahrscheinlich unterstützen nicht alle Repository-Typen die Versionierung. Im Allgemeinen ist es sinnvoll, für die Wiederherstellung ein einzelnes Repository auszuwählen.
Beim Vergleich werden Speicherzeitstempel berücksichtigt, die <= dem angegebenen Zeitstempel sind. Enthaltene Millisekunden werden abgeschnitten.
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
Stanza-Optionen
Option für den PostgreSQL-Pfad (--pg-path)
PostgreSQL-Datenverzeichnis.
Dieser Pfad sollte dem von PostgreSQL gemeldeten data_directory entsprechen. Obwohl sich der Wert an verschiedenen Stellen auslesen lässt, ist eine ausdrückliche Angabe ratsam, falls diese Quellen bei einer Wiederherstellung oder einem Offline-Backup nicht verfügbar sind.
Bei jedem Online-Backup wird pg-path mit dem von PostgreSQL gemeldeten Wert verglichen. Die Option sollte daher immer aktuell sein.
Veralteter Name: db-path
12 - Server-Befehl (server)
server.Der pgBackRest-Server ermöglicht den Zugriff auf entfernte Hosts ohne das SSH-Protokoll.
Befehlsoptionen
Option für die TLS-Serveradresse (--tls-server-address)
TLS-Serveradresse.
IP-Adresse, an der der Server auf Client-Anfragen wartet.
Option für berechtigte TLS-Clients (--tls-server-auth)
Für den TLS-Server berechtigte Clients.
Der Server autorisiert Clients, indem er ihr Zertifikat prüft und dessen CN (Common Name) mit einer Liste vergleicht, die auf dem Server mit der Option tls-server-auth konfiguriert ist.
Ein Client-CN kann für beliebig viele Stanzas berechtigt werden, indem der Option tls-server-auth eine durch Kommas getrennte Liste übergeben wird. Mit tls-server-auth=client-cn=* gilt die Berechtigung für alle Stanzas. Im Client-CN dürfen keine Platzhalter angegeben werden.
Option für die Zertifizierungsstellen des TLS-Servers (--tls-server-ca-file)
Zertifizierungsstellen des TLS-Servers.
Prüft, ob Client-Zertifikate von einer vertrauenswürdigen Zertifizierungsstelle signiert sind.
Option für das TLS-Serverzertifikat (--tls-server-cert-file)
Datei mit dem TLS-Serverzertifikat.
Wird an den Client gesendet, um die Identität des Servers nachzuweisen.
Option für den TLS-Serverschlüssel (--tls-server-key-file)
Datei mit dem TLS-Serverschlüssel.
Weist nach, dass das Serverzertifikat von seinem Eigentümer gesendet wurde.
Option für den TLS-Serverport (--tls-server-port)
TLS-Serverport.
Port, an dem der Server auf Client-Anfragen wartet.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
13 - Server-Ping-Befehl (server-ping)
server-ping.Einen pgBackRest-TLS-Server mit einem Ping darauf prüfen, ob er Verbindungen annimmt. Dabei wird nur geprüft, ob der Server reagiert; eine Authentifizierung findet nicht statt.
Wird in der Befehlszeile kein Host angegeben, wird die Option tls-server-host verwendet.
Befehlsoptionen
Option für die TLS-Serveradresse (--tls-server-address)
TLS-Serveradresse.
IP-Adresse, an der der Server auf Client-Anfragen wartet.
Option für den TLS-Serverport (--tls-server-port)
TLS-Serverport.
Port, an dem der Server auf Client-Anfragen wartet.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
14 - Befehl zum Erstellen einer Stanza (stanza-create)
stanza-create.Nach der Konfiguration einer Stanza in pgbackrest.conf muss stanza-create ausgeführt werden. Sind mehrere Repositorys konfiguriert, wird die Stanza in jedem erstellt. Bereits erstellte Stanzas werden übersprungen. Daher kann stanza-create jederzeit gefahrlos ausgeführt werden, auch wenn ein neues Repository konfiguriert wurde.
Weitere Informationen und ein Beispiel finden Sie unter Die Stanza erstellen .
Befehlsoptionen
Online-Option (--online)
Auf einem laufenden Cluster erstellen.
Mit –no-online verbindet sich pgBackRest beim Erstellen der Stanza nicht mit PostgreSQL.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das Datenbankzeitlimit (--db-timeout)
Zeitlimit für Datenbankabfragen.
Legt das Zeitlimit für Datenbankabfragen in Sekunden fest. Dazu gehören auch die Funktionen zum Starten und Stoppen des Backups, die jeweils viel Zeit benötigen können. Daher sollte das Zeitlimit hoch bleiben, sofern nicht bekannt ist, dass diese Funktionen schnell zurückkehren, etwa wenn start-fast=y gesetzt ist und bekannt ist, dass der Datenbankcluster während des Backups nur wenige WAL-Segmente erzeugt.
HINWEIS: Der Wert von
db-timeoutmuss kleiner sein als der vonprotocol-timeout.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
Stanza-Optionen
Option für die PostgreSQL-Datenbank (--pg-database)
PostgreSQL-Datenbank.
Name der Datenbank für Verbindungen zu PostgreSQL. Meist ist der Standardwert die beste Wahl, doch manche Installationen enthalten diese Datenbank möglicherweise nicht.
Aus Kompatibilitätsgründen wird die Umgebungsvariable PGDATABASE ignoriert.
Option für den PostgreSQL-Host (--pg-host)
PostgreSQL-Host für die Ausführung auf einem entfernten System.
Für Backups, bei denen PostgreSQL-Host und Repository-Host unterschiedliche Systeme sind.
Veralteter Name: db-host
Option für die CA-Datei des PostgreSQL-Hosts (--pg-host-ca-file)
Datei mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des PostgreSQL-Hosts (--pg-host-ca-path)
Pfad mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des PostgreSQL-Hosts (--pg-host-cert-file)
Zertifikatdatei für den PostgreSQL-Host.
Wird an den PostgreSQL-Host gesendet, um die Identität des Clients nachzuweisen.
Option für den Befehl auf dem PostgreSQL-Host (--pg-host-cmd)
pgBackRest-Befehl auf dem PostgreSQL-Host.
Nur erforderlich, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem PostgreSQL-Host unterschiedlich ist. Ohne Angabe wird auf dem PostgreSQL-Host derselbe Befehl wie lokal verwendet.
Veralteter Name: db-cmd
Option für die Konfiguration des PostgreSQL-Hosts (--pg-host-config)
pgBackRest-Konfigurationsdatei auf dem Datenbank-Host.
Legt den Speicherort der Konfigurationsdatei auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn die Datei dort an einem anderen Ort liegt als die lokale Konfigurationsdatei.
Veralteter Name: db-config
Option für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host (--pg-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Datenbank-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des PostgreSQL-Hosts (--pg-host-config-path)
pgBackRest-Konfigurationspfad auf dem Datenbank-Host.
Legt den Konfigurationspfad auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des PostgreSQL-Hosts (--pg-host-key-file)
Schlüsseldatei für den PostgreSQL-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des PostgreSQL-Hosts (--pg-host-port)
Port des PostgreSQL-Hosts, wenn pg-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des PostgreSQL-Hosts angeben.
HINWEIS: Bei
pg-host-type=sshgibt es keinen Standardwert fürpg-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: db-ssh-port
Option für den Protokolltyp des PostgreSQL-Hosts (--pg-host-type)
Protokolltyp für den PostgreSQL-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem PostgreSQL-Host (--pg-host-user)
Anmeldebenutzer auf dem PostgreSQL-Host, wenn pg-host gesetzt ist.
Unter diesem Benutzer läuft auch der entfernte pgBackRest-Prozess, und er baut die Verbindungen zu PostgreSQL auf. Damit dies korrekt funktioniert, sollte er Eigentümer des PostgreSQL-Datenbankclusters sein. Üblicherweise ist dies postgres, der Standardwert.
Veralteter Name: db-user
Option für den PostgreSQL-Pfad (--pg-path)
PostgreSQL-Datenverzeichnis.
Dieser Pfad sollte dem von PostgreSQL gemeldeten data_directory entsprechen. Obwohl sich der Wert an verschiedenen Stellen auslesen lässt, ist eine ausdrückliche Angabe ratsam, falls diese Quellen bei einer Wiederherstellung oder einem Offline-Backup nicht verfügbar sind.
Bei jedem Online-Backup wird pg-path mit dem von PostgreSQL gemeldeten Wert verglichen. Die Option sollte daher immer aktuell sein.
Veralteter Name: db-path
Option für den PostgreSQL-Port (--pg-port)
PostgreSQL-Port.
Port, auf dem PostgreSQL läuft. Dieser muss normalerweise nicht angegeben werden, da die meisten PostgreSQL-Cluster den Standardport verwenden.
Veralteter Name: db-port
Option für den PostgreSQL-Socket-Pfad (--pg-socket-path)
Pfad zum PostgreSQL-Unix-Socket.
Das beim Start von PostgreSQL angegebene Unix-Socket-Verzeichnis. pgBackRest sucht automatisch am üblichen Speicherort des Betriebssystems. Diese Einstellung ist daher normalerweise nur erforderlich, wenn das Socket-Verzeichnis ausdrücklich über unix_socket_directories in postgresql.conf geändert wurde.
Veralteter Name: db-socket-path
Option für den PostgreSQL-Datenbankbenutzer (--pg-user)
PostgreSQL-Datenbankbenutzer.
Datenbankbenutzername für Verbindungen zu PostgreSQL. Ohne Angabe verbindet sich pgBackRest mit dem lokalen Betriebssystembenutzer oder mit PGUSER.
15 - Befehl zum Löschen einer Stanza (stanza-delete)
stanza-delete.Der Befehl stanza-delete entfernt die zu einer Stanza gehörenden Daten aus dem Repository.
WARNUNG:
Diesen Befehl mit Vorsicht verwenden: Er entfernt dauerhaft alle Backups und Archive der angegebenen Stanza aus dem pgBackRest-Repository.
So löschen Sie eine Stanza:
- Den zur Stanza gehörenden PostgreSQL-Cluster herunterfahren oder diese Anforderung mit –force übergehen.
- Den Befehl
stopauf dem Host ausführen, auf demstanza-deleteausgeführt werden soll. - Den Befehl
stanza-deleteausführen.
Nach erfolgreichem Abschluss muss der Benutzer die Stanza selbst aus allen pgBackRest-Konfigurationsdateien und/oder Umgebungsvariablen entfernen.
Eine Stanza kann jeweils nur aus einem Repository gelöscht werden. Zum Löschen aus mehreren Repositorys den Befehl stanza-delete für jedes Repository mit der Option --repo wiederholen.
Befehlsoptionen
Option zum Erzwingen (--force)
Das Löschen der Stanza erzwingen.
Läuft PostgreSQL für die Stanza noch, kann mit dieser Option das Löschen der Stanza aus dem Repository erzwungen werden.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das Datenbankzeitlimit (--db-timeout)
Zeitlimit für Datenbankabfragen.
Legt das Zeitlimit für Datenbankabfragen in Sekunden fest. Dazu gehören auch die Funktionen zum Starten und Stoppen des Backups, die jeweils viel Zeit benötigen können. Daher sollte das Zeitlimit hoch bleiben, sofern nicht bekannt ist, dass diese Funktionen schnell zurückkehren, etwa wenn start-fast=y gesetzt ist und bekannt ist, dass der Datenbankcluster während des Backups nur wenige WAL-Segmente erzeugt.
HINWEIS: Der Wert von
db-timeoutmuss kleiner sein als der vonprotocol-timeout.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
Stanza-Optionen
Option für die PostgreSQL-Datenbank (--pg-database)
PostgreSQL-Datenbank.
Name der Datenbank für Verbindungen zu PostgreSQL. Meist ist der Standardwert die beste Wahl, doch manche Installationen enthalten diese Datenbank möglicherweise nicht.
Aus Kompatibilitätsgründen wird die Umgebungsvariable PGDATABASE ignoriert.
Option für den PostgreSQL-Host (--pg-host)
PostgreSQL-Host für die Ausführung auf einem entfernten System.
Für Backups, bei denen PostgreSQL-Host und Repository-Host unterschiedliche Systeme sind.
Veralteter Name: db-host
Option für die CA-Datei des PostgreSQL-Hosts (--pg-host-ca-file)
Datei mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des PostgreSQL-Hosts (--pg-host-ca-path)
Pfad mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des PostgreSQL-Hosts (--pg-host-cert-file)
Zertifikatdatei für den PostgreSQL-Host.
Wird an den PostgreSQL-Host gesendet, um die Identität des Clients nachzuweisen.
Option für den Befehl auf dem PostgreSQL-Host (--pg-host-cmd)
pgBackRest-Befehl auf dem PostgreSQL-Host.
Nur erforderlich, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem PostgreSQL-Host unterschiedlich ist. Ohne Angabe wird auf dem PostgreSQL-Host derselbe Befehl wie lokal verwendet.
Veralteter Name: db-cmd
Option für die Konfiguration des PostgreSQL-Hosts (--pg-host-config)
pgBackRest-Konfigurationsdatei auf dem Datenbank-Host.
Legt den Speicherort der Konfigurationsdatei auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn die Datei dort an einem anderen Ort liegt als die lokale Konfigurationsdatei.
Veralteter Name: db-config
Option für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host (--pg-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Datenbank-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des PostgreSQL-Hosts (--pg-host-config-path)
pgBackRest-Konfigurationspfad auf dem Datenbank-Host.
Legt den Konfigurationspfad auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des PostgreSQL-Hosts (--pg-host-key-file)
Schlüsseldatei für den PostgreSQL-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des PostgreSQL-Hosts (--pg-host-port)
Port des PostgreSQL-Hosts, wenn pg-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des PostgreSQL-Hosts angeben.
HINWEIS: Bei
pg-host-type=sshgibt es keinen Standardwert fürpg-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: db-ssh-port
Option für den Protokolltyp des PostgreSQL-Hosts (--pg-host-type)
Protokolltyp für den PostgreSQL-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem PostgreSQL-Host (--pg-host-user)
Anmeldebenutzer auf dem PostgreSQL-Host, wenn pg-host gesetzt ist.
Unter diesem Benutzer läuft auch der entfernte pgBackRest-Prozess, und er baut die Verbindungen zu PostgreSQL auf. Damit dies korrekt funktioniert, sollte er Eigentümer des PostgreSQL-Datenbankclusters sein. Üblicherweise ist dies postgres, der Standardwert.
Veralteter Name: db-user
Option für den PostgreSQL-Pfad (--pg-path)
PostgreSQL-Datenverzeichnis.
Dieser Pfad sollte dem von PostgreSQL gemeldeten data_directory entsprechen. Obwohl sich der Wert an verschiedenen Stellen auslesen lässt, ist eine ausdrückliche Angabe ratsam, falls diese Quellen bei einer Wiederherstellung oder einem Offline-Backup nicht verfügbar sind.
Bei jedem Online-Backup wird pg-path mit dem von PostgreSQL gemeldeten Wert verglichen. Die Option sollte daher immer aktuell sein.
Veralteter Name: db-path
Option für den PostgreSQL-Port (--pg-port)
PostgreSQL-Port.
Port, auf dem PostgreSQL läuft. Dieser muss normalerweise nicht angegeben werden, da die meisten PostgreSQL-Cluster den Standardport verwenden.
Veralteter Name: db-port
Option für den PostgreSQL-Socket-Pfad (--pg-socket-path)
Pfad zum PostgreSQL-Unix-Socket.
Das beim Start von PostgreSQL angegebene Unix-Socket-Verzeichnis. pgBackRest sucht automatisch am üblichen Speicherort des Betriebssystems. Diese Einstellung ist daher normalerweise nur erforderlich, wenn das Socket-Verzeichnis ausdrücklich über unix_socket_directories in postgresql.conf geändert wurde.
Veralteter Name: db-socket-path
Option für den PostgreSQL-Datenbankbenutzer (--pg-user)
PostgreSQL-Datenbankbenutzer.
Datenbankbenutzername für Verbindungen zu PostgreSQL. Ohne Angabe verbindet sich pgBackRest mit dem lokalen Betriebssystembenutzer oder mit PGUSER.
16 - Befehl zum Aktualisieren einer Stanza (stanza-upgrade)
stanza-upgrade.Unmittelbar nach einem Upgrade auf eine neuere PostgreSQL-Hauptversion muss pg-path in allen pgBackRest-Konfigurationen auf das neue Datenbankverzeichnis gesetzt und stanza-upgrade ausgeführt werden. Sind mehrere Repositorys auf dem Host konfiguriert, wird die Stanza in jedem aktualisiert. Ist die Datenbank offline, die Option --no-online verwenden.
Befehlsoptionen
Online-Option (--online)
Einen laufenden Cluster aktualisieren.
Mit –no-online verbindet sich pgBackRest beim Aktualisieren der Stanza nicht mit PostgreSQL.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das Datenbankzeitlimit (--db-timeout)
Zeitlimit für Datenbankabfragen.
Legt das Zeitlimit für Datenbankabfragen in Sekunden fest. Dazu gehören auch die Funktionen zum Starten und Stoppen des Backups, die jeweils viel Zeit benötigen können. Daher sollte das Zeitlimit hoch bleiben, sofern nicht bekannt ist, dass diese Funktionen schnell zurückkehren, etwa wenn start-fast=y gesetzt ist und bekannt ist, dass der Datenbankcluster während des Backups nur wenige WAL-Segmente erzeugt.
HINWEIS: Der Wert von
db-timeoutmuss kleiner sein als der vonprotocol-timeout.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
Stanza-Optionen
Option für die PostgreSQL-Datenbank (--pg-database)
PostgreSQL-Datenbank.
Name der Datenbank für Verbindungen zu PostgreSQL. Meist ist der Standardwert die beste Wahl, doch manche Installationen enthalten diese Datenbank möglicherweise nicht.
Aus Kompatibilitätsgründen wird die Umgebungsvariable PGDATABASE ignoriert.
Option für den PostgreSQL-Host (--pg-host)
PostgreSQL-Host für die Ausführung auf einem entfernten System.
Für Backups, bei denen PostgreSQL-Host und Repository-Host unterschiedliche Systeme sind.
Veralteter Name: db-host
Option für die CA-Datei des PostgreSQL-Hosts (--pg-host-ca-file)
Datei mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des PostgreSQL-Hosts (--pg-host-ca-path)
Pfad mit den Zertifizierungsstellen für den PostgreSQL-Host.
Für Verbindungen zum PostgreSQL-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des PostgreSQL-Hosts (--pg-host-cert-file)
Zertifikatdatei für den PostgreSQL-Host.
Wird an den PostgreSQL-Host gesendet, um die Identität des Clients nachzuweisen.
Option für den Befehl auf dem PostgreSQL-Host (--pg-host-cmd)
pgBackRest-Befehl auf dem PostgreSQL-Host.
Nur erforderlich, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem PostgreSQL-Host unterschiedlich ist. Ohne Angabe wird auf dem PostgreSQL-Host derselbe Befehl wie lokal verwendet.
Veralteter Name: db-cmd
Option für die Konfiguration des PostgreSQL-Hosts (--pg-host-config)
pgBackRest-Konfigurationsdatei auf dem Datenbank-Host.
Legt den Speicherort der Konfigurationsdatei auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn die Datei dort an einem anderen Ort liegt als die lokale Konfigurationsdatei.
Veralteter Name: db-config
Option für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host (--pg-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Datenbank-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des PostgreSQL-Hosts (--pg-host-config-path)
pgBackRest-Konfigurationspfad auf dem Datenbank-Host.
Legt den Konfigurationspfad auf dem PostgreSQL-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem PostgreSQL-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des PostgreSQL-Hosts (--pg-host-key-file)
Schlüsseldatei für den PostgreSQL-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des PostgreSQL-Hosts (--pg-host-port)
Port des PostgreSQL-Hosts, wenn pg-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des PostgreSQL-Hosts angeben.
HINWEIS: Bei
pg-host-type=sshgibt es keinen Standardwert fürpg-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: db-ssh-port
Option für den Protokolltyp des PostgreSQL-Hosts (--pg-host-type)
Protokolltyp für den PostgreSQL-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem PostgreSQL-Host (--pg-host-user)
Anmeldebenutzer auf dem PostgreSQL-Host, wenn pg-host gesetzt ist.
Unter diesem Benutzer läuft auch der entfernte pgBackRest-Prozess, und er baut die Verbindungen zu PostgreSQL auf. Damit dies korrekt funktioniert, sollte er Eigentümer des PostgreSQL-Datenbankclusters sein. Üblicherweise ist dies postgres, der Standardwert.
Veralteter Name: db-user
Option für den PostgreSQL-Pfad (--pg-path)
PostgreSQL-Datenverzeichnis.
Dieser Pfad sollte dem von PostgreSQL gemeldeten data_directory entsprechen. Obwohl sich der Wert an verschiedenen Stellen auslesen lässt, ist eine ausdrückliche Angabe ratsam, falls diese Quellen bei einer Wiederherstellung oder einem Offline-Backup nicht verfügbar sind.
Bei jedem Online-Backup wird pg-path mit dem von PostgreSQL gemeldeten Wert verglichen. Die Option sollte daher immer aktuell sein.
Veralteter Name: db-path
Option für den PostgreSQL-Port (--pg-port)
PostgreSQL-Port.
Port, auf dem PostgreSQL läuft. Dieser muss normalerweise nicht angegeben werden, da die meisten PostgreSQL-Cluster den Standardport verwenden.
Veralteter Name: db-port
Option für den PostgreSQL-Socket-Pfad (--pg-socket-path)
Pfad zum PostgreSQL-Unix-Socket.
Das beim Start von PostgreSQL angegebene Unix-Socket-Verzeichnis. pgBackRest sucht automatisch am üblichen Speicherort des Betriebssystems. Diese Einstellung ist daher normalerweise nur erforderlich, wenn das Socket-Verzeichnis ausdrücklich über unix_socket_directories in postgresql.conf geändert wurde.
Veralteter Name: db-socket-path
Option für den PostgreSQL-Datenbankbenutzer (--pg-user)
PostgreSQL-Datenbankbenutzer.
Datenbankbenutzername für Verbindungen zu PostgreSQL. Ohne Angabe verbindet sich pgBackRest mit dem lokalen Betriebssystembenutzer oder mit PGUSER.
17 - Startbefehl (start)
start.Wurden pgBackRest-Prozesse zuvor mit dem Befehl stop gestoppt, kann ihre Ausführung mit dem Befehl start wieder zugelassen werden. Dabei werden keine pgBackRest-Prozesse unmittelbar gestartet; sie dürfen lediglich wieder ausgeführt werden. Weitere Informationen und Beispiele finden Sie unter Starten und Stoppen
.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
18 - Stoppbefehl (stop)
stop.Verhindert die Ausführung neuer pgBackRest-Prozesse. Standardmäßig dürfen laufende Prozesse erfolgreich abgeschlossen werden. Mit der Option --force werden laufende Prozesse beendet.
pgBackRest-Prozesse geben einen Fehler zurück, wenn sie nach Abschluss des Stoppbefehls ausgeführt werden. Weitere Informationen und Beispiele finden Sie unter Starten und Stoppen .
Befehlsoptionen
Option zum Erzwingen (--force)
Das Stoppen aller pgBackRest-Prozesse erzwingen.
Diese Option sendet TERM-Signale an alle laufenden pgBackRest-Prozesse, um ein geordnetes, aber sofortiges Herunterfahren auszulösen. Sie beendet auch Prozesse, die auf einem anderen System gestartet wurden, deren entfernte Teilprozesse aber auf dem aktuellen System laufen. Wurde beispielsweise ein Backup auf dem Backup-Server gestartet, beendet stop --force auf dem Datenbankserver auch den Backup-Prozess auf dem Backup-Server.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für den Sperrdateipfad (--lock-path)
Pfad zum Speichern der Sperrdateien.
In diesem Pfad erstellt pgBackRest Sperrdateien, um die gleichzeitige Ausführung miteinander in Konflikt stehender Operationen zu verhindern.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
19 - Validierungsbefehl (verify)
verify.Die Validierung stellt fest, ob Backups und Archive in einem Repository gültig sind.
Befehlsoptionen
Ausgabeoption (--output)
Ausgabetyp.
Die folgenden Ausgabetypen werden unterstützt:
none- Keine Ausgabe zur Validierung.text- Validierungsinformationen an stdout ausgeben.
Option zur Auswahl des Backup-Satzes (--set)
Zu validierender Backup-Satz.
Alle Datenbank- und Archivdateien validieren, die zum angegebenen Backup-Satz gehören.
Option für ausführliche Ausgabe (--verbose)
Ausführliche Ausgabe.
Die ausführliche Ausgabe ist standardmäßig auf false gesetzt. Es wird eine knappe Antwort mit wichtigen Informationen zu Fehlern im Repository ausgegeben. Mit true erscheinen zusätzliche Informationen darüber, was erfolgreich validiert wurde.
Allgemeine Optionen
Option zur Ausführung als root (--allow-root)
Die Ausführung des Befehls als Benutzer root erlauben.
Standardmäßig darf nur der Befehl restore als Benutzer root ausgeführt werden, da er die Dateieigentümer sorgfältig verwaltet. Bei anderen Befehlen besteht das Risiko, dass Dateien entstehen, die root gehören, etwa im Repository. Diese sind für den PostgreSQL-Benutzer nicht zugänglich, sodass spätere Befehle fehlschlagen.
Diese Option aktivieren, um einen Befehl dennoch als root auszuführen. Es ist jedoch deutlich besser, pgBackRest als den Benutzer auszuführen, dem das Repository und der PostgreSQL-Cluster gehören.
Option für die Puffergröße (--buffer-size)
Puffergröße für I/O-Operationen.
Puffergröße für Kopier-, Komprimierungs-, Verschlüsselungs- und andere Operationen. Die Anzahl der verwendeten Puffer hängt von den Optionen ab. Jede Operation kann zusätzlichen Speicher benötigen; beispielsweise kann die Komprimierung mit gz weitere 256KiB Speicher beanspruchen.
Zulässige Werte sind 16KiB, 32KiB, 64KiB, 128KiB, 256KiB, 512KiB, 1MiB, 2MiB, 4MiB, 8MiB und 16MiB.
Option für den pgBackRest-Befehl (--cmd)
pgBackRest-Befehl.
pgBackRest kann eine Befehlszeichenfolge erzeugen, etwa wenn der Befehl restore die Einstellung restore_command erzeugt. Dafür wird der Befehl verwendet, mit dem der pgBackRest-Prozess gestartet wurde, sofern nicht die Option cmd angegeben ist.
ACHTUNG:
Das Einbetten des pgBackRest-Befehls in einen Wrapper kann unvorhersehbares Verhalten verursachen und wird nicht empfohlen.
Option für den SSH-Client-Befehl (--cmd-ssh)
SSH-Client-Befehl.
Einen bestimmten SSH-Client-Befehl verwenden, wenn eine Alternative gewünscht wird oder der Befehl ssh nicht in $PATH liegt.
Option für die Netzwerkkomprimierungsstufe (--compress-level-network)
Komprimierungsstufe für die Netzwerkübertragung.
Legt die Komprimierungsstufe für die Netzwerkübertragung fest, wenn compress-type=none gilt und der Befehl nicht auf demselben Host wie das Repository ausgeführt wird. Die Komprimierung verringert den Netzwerkverkehr. Wenn compress-type nicht none ist, wird compress-level-network ignoriert und stattdessen compress-level verwendet, damit die Datei nur einmal komprimiert wird.
Option für die Konfigurationsdatei (--config)
pgBackRest-Konfigurationsdatei.
Mit dieser Option eine andere als die standardmäßige Konfigurationsdatei angeben.
Option für den Pfad zusätzlicher Konfigurationsdateien (--config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien.
Konfigurationsdateien mit der Endung .conf am angegebenen Speicherort werden mit der pgBackRest-Konfigurationsdatei zu einer einzigen Konfigurationsdatei zusammengefügt.
Option für den Konfigurationspfad (--config-path)
Basispfad der pgBackRest-Konfigurationsdateien.
Diese Einstellung überschreibt den standardmäßigen Basispfad der Optionen --config und --config-include-path, sofern diese nicht ausdrücklich in der Befehlszeile gesetzt werden.
Wird beispielsweise nur --config-path=/conf/pgbackrest angegeben, erhält --config den Standardwert /conf/pgbackrest/pgbackrest.conf und --config-include-path den Standardwert /conf/pgbackrest/conf.d.
Option für das I/O-Zeitlimit (--io-timeout)
I/O-Zeitlimit.
Zeitlimit in Sekunden für Verbindungen sowie Lese- und Schreiboperationen.
Die gesamte Lese- oder Schreiboperation muss nicht innerhalb dieses Zeitlimits abgeschlossen sein, aber es muss irgendein Fortschritt erzielt werden, selbst wenn es nur ein einziges Byte ist.
Option für eine neutrale umask (--neutral-umask)
Eine neutrale umask verwenden.
Setzt die umask auf 0000, damit die Zugriffsrechte im Repository sinnvoll gesetzt werden. Standardmäßig erhalten Verzeichnisse den Modus 0750 und Dateien den Modus 0640.
Um stattdessen die umask des ausführenden Benutzers zu verwenden, neutral-umask=n in der Konfigurationsdatei oder --no-neutral-umask in der Befehlszeile angeben.
Option für die Prozesspriorität (--priority)
Prozesspriorität festlegen.
Legt fest, welche Priorität (also welcher nice-Wert) dem Prozess vom Kernel-Scheduler zugewiesen wird. Positive Werte verringern die Priorität, negative Werte erhöhen sie. In den meisten Fällen dürfen Prozesse ihre Priorität nicht erhöhen.
Option für die maximale Prozessanzahl (--process-max)
Maximale Anzahl der Prozesse für Komprimierung und Übertragung.
Jeder Prozess führt Komprimierung und Übertragung aus, um den Befehl zu beschleunigen. process-max jedoch nicht so hoch setzen, dass die Datenbankleistung beeinträchtigt wird.
Option für das Protokollzeitlimit (--protocol-timeout)
Protokollzeitlimit.
Legt in Sekunden fest, wie lange der lokale oder entfernte Prozess auf eine neue Nachricht auf der Protokollebene wartet. Dies verhindert, dass Prozesse unbegrenzt auf eine Nachricht warten.
HINWEIS: Der Wert von
protocol-timeoutmuss größer sein als der vondb-timeout.
Option für Keep-alive (--sck-keep-alive)
Keep-alive aktivieren.
Aktiviert Keep-alive-Nachrichten auf Socket-Verbindungen.
Option für die Stanza (--stanza)
Definiert die Stanza.
Eine Stanza ist die Konfiguration eines PostgreSQL-Datenbankclusters. Sie legt unter anderem dessen Speicherort, das Backup-Verfahren und die Archivierungsoptionen fest. Die meisten Datenbankserver haben nur einen PostgreSQL-Datenbankcluster und daher nur eine Stanza. Backup-Server haben dagegen für jeden zu sichernden Datenbankcluster eine Stanza.
Es liegt nahe, die Stanza nach dem Primärcluster zu benennen. Ein besserer Name beschreibt jedoch die im Cluster enthaltenen Datenbanken. Da der Stanza-Name für den Primärserver und alle Replikate verwendet wird, sollte er die tatsächliche Funktion des Clusters beschreiben, etwa app oder dw, statt den lokalen Clusternamen wie main oder prod zu übernehmen.
Option für die Keep-alive-Anzahl (--tcp-keep-alive-count)
Anzahl der Keep-alive-Nachrichten.
Legt fest, wie viele TCP-Keep-alive-Nachrichten verloren gehen dürfen, bevor die Verbindung als unterbrochen gilt.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPCNT unterstützen.
Option für die Keep-alive-Leerlaufzeit (--tcp-keep-alive-idle)
Keep-alive-Leerlaufzeit.
Legt die Zeit ohne Netzwerkaktivität in Sekunden fest, nach der das Betriebssystem eine TCP-Keep-alive-Nachricht senden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPIDLE unterstützen.
Option für das Keep-alive-Intervall (--tcp-keep-alive-interval)
Keep-alive-Intervall.
Legt die Zeit in Sekunden fest, nach der eine nicht bestätigte TCP-Keep-alive-Nachricht erneut gesendet werden sollte.
Diese Option ist auf Systemen verfügbar, die die Socket-Option TCP_KEEPINTVL unterstützen.
Option für TLSv1.2-Cipher-Suites (--tls-cipher-12)
Zulässige TLSv1.2-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Das Beispiel ist eine sinnvolle Wahl, sofern keine besonderen Sicherheitsanforderungen bestehen. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Option für TLSv1.3-Cipher-Suites (--tls-cipher-13)
Zulässige TLSv1.3-Cipher-Suites.
Alle TLS-Verbindungen zwischen pgBackRest-Client und -Server sind verschlüsselt. Standardmäßig sind auch Verbindungen zu Objektspeichern wie S3 verschlüsselt.
HINWEIS: TLSv1.2 ist das absolute Mindestsicherheitsniveau für jede Transportverbindung.
Die akzeptierten Cipher-Suites können bei Bedarf angepasst werden. Ist die Option nicht gesetzt (Standardeinstellung), gilt die Vorgabe der zugrunde liegenden OpenSSL-Bibliothek.
Protokollierungsoptionen
Option für die Protokollierungsstufe der Konsole (--log-level-console)
Protokollierungsstufe für die Konsole.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Datei (--log-level-file)
Protokollierungsstufe für die Dateiausgabe.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für die Protokollierungsstufe der Standardfehlerausgabe (--log-level-stderr)
Protokollierungsstufe für stderr.
Legt fest, welche Protokollierungsstufen an stderr statt an stdout ausgegeben werden (festgelegt durch log-level-console). Zeitstempel und Prozess werden nicht an stderr ausgegeben.
Die folgenden Protokollierungsstufen werden unterstützt:
off- Keine Protokollierung (nicht empfohlen)error- Nur Fehler protokollierenwarn- Warnungen und Fehler protokolliereninfo- Informationen, Warnungen und Fehler protokollierendetail- Details, Informationen, Warnungen und Fehler protokollierendebug- Debug-Meldungen, Details, Informationen, Warnungen und Fehler protokollierentrace- Trace-Meldungen (sehr ausführliche Debug-Ausgaben), Debug-Meldungen, Informationen, Warnungen und Fehler protokollieren
Option für den Protokollpfad (--log-path)
Pfad, an dem Protokolldateien gespeichert werden.
In diesem Pfad speichert pgBackRest seine Protokolldateien. Bei log-level-file=off ist kein Protokollpfad erforderlich.
Option für die Protokollierung von Unterprozessen (--log-subprocess)
Protokollierung in Unterprozessen aktivieren.
Aktiviert die Dateiprotokollierung für alle von diesem Prozess erzeugten Unterprozesse mit der durch log-level-file festgelegten Protokollierungsstufe.
Option für Zeitstempel im Protokoll (--log-timestamp)
Zeitstempel in der Protokollierung aktivieren.
Aktiviert Zeitstempel in der Konsolen- und Dateiprotokollierung. Diese Option wird in besonderen Situationen deaktiviert, etwa beim Erzeugen der Dokumentation.
Optionen für Maintainer
Option zum Erzwingen der PostgreSQL-Version (--pg-version-force)
PostgreSQL-Version erzwingen.
Verwendet die angegebene PostgreSQL-Version statt der Version, die automatisch aus pg_control oder WAL-Headern ermittelt wird. Dies ist hauptsächlich für PostgreSQL-Forks oder Entwicklungsversionen hilfreich, deren Werte von denen der veröffentlichten Version abweichen. Die von PostgreSQL über server_version_num gemeldete Version muss mit der erzwungenen Version übereinstimmen.
WARNUNG:
Diese Option mit Vorsicht verwenden: pg_control und WAL-Header werden weiterhin im erwarteten Format der angegebenen Version gelesen, also im Format der offiziellen Open-Source-Version von PostgreSQL. Ändert der Fork oder die Entwicklungsversion das Format von Feldern, auf die pgBackRest angewiesen ist, führt dies zu unerwartetem Verhalten. Im Allgemeinen funktioniert diese Option nur dann wie erwartet, wenn der Fork alle eigenen Strukturfelder nach den standardmäßigen PostgreSQL-Feldern hinzufügt.
Repository-Optionen
Option zur Auswahl des Repositorys (--repo)
Repository festlegen.
Legt das Repository fest, auf das ein Befehl wirken soll.
Damit kann beispielsweise eine Wiederherstellung aus einem bestimmten Repository durchgeführt werden, anstatt pgBackRest die Auswahl zu überlassen.
Option für den Azure-Container des Repositorys (--repo-azure-container)
Azure-Repository-Container.
Azure-Container, der das Repository speichert.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Containers gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von Azure erzeugte Inhalte im Container gespeichert werden können.
Option für den Azure-Schlüsseltyp des Repositorys (--repo-azure-key-type)
Azure-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
shared- Gemeinsamer Schlüsselsas- Signatur für gemeinsamen Zugriffauto- Automatische Autorisierung mit verwalteten Azure-Identitäten
Option für den Azure-URI-Stil des Repositorys (--repo-azure-uri-style)
Azure-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Verbindung zumaccount.endpoint-Host herstellen.path- Verbindung zumendpoint-Host herstellen und den Kontonamen vor die URIs stellen.
Option für den Verschlüsselungstyp des Repositorys (--repo-cipher-type)
Verfahren zur Verschlüsselung des Repositorys.
Folgende Verschlüsselungstypen werden unterstützt:
none- Das Repository ist nicht verschlüsseltaes-256-cbc- Advanced Encryption Standard mit Schlüssellänge von 256 Bit
Beachten Sie, dass die Verschlüsselung immer clientseitig durchgeführt wird, selbst wenn der Repository-Typ (z. B. S3) Verschlüsselung unterstützt.
Option für den GCS-Bucket des Repositorys (--repo-gcs-bucket)
GCS-Bucket des Repositorys.
GCS-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von GCS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den GCS-Endpunkt des Repositorys (--repo-gcs-endpoint)
GCS-Repository-Endpunkt.
Endpunkt, der zum Verbinden mit dem Speicherdienst verwendet wird. Kann aktualisiert werden, um einen lokalen GCS-Server oder einen alternativen Endpunkt zu verwenden.
Option für den GCS-Schlüsseltyp des Repositorys (--repo-gcs-key-type)
GCS-Repository-Schlüsseltyp.
Folgende Typen werden für die Autorisierung unterstützt:
auto- Autorisierung mithilfe des Dienstkontos der Instanz.service- Dienstkonto anhand eines lokal gespeicherten Schlüssels.token- Für lokale Tests, z. B.fakegcs.
Wenn repo-gcs-key-type=service ist, werden die Anmeldeinformationen erneut geladen, wenn das Authentifizierungstoken erneuert wird.
Option für die GCS-Projekt-ID des Repositorys (--repo-gcs-user-project)
GCS-Projekt-ID.
GCS-Projekt-ID, die zur Bestimmung der Abrechnung von Anfragen verwendet wird.
Option für den Repository-Host (--repo-host)
Repository-Host bei entfernter Ausführung.
Für Backups und Archivierung auf einem lokal eingehängten Dateisystem ist diese Einstellung nicht erforderlich.
Veralteter Name: backup-host
Option für die CA-Datei des Repository-Hosts (--repo-host-ca-file)
Datei mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host eine andere als die systemweite CA-Datei verwenden.
Option für den CA-Pfad des Repository-Hosts (--repo-host-ca-path)
Pfad mit den Zertifizierungsstellen für den Repository-Host.
Für Verbindungen zum Repository-Host einen anderen als den systemweiten CA-Pfad verwenden.
Option für die Zertifikatdatei des Repository-Hosts (--repo-host-cert-file)
Zertifikatdatei für den Repository-Host.
Wird an den Repository-Host gesendet, um die Client-Identität zu bestätigen.
Option für den Befehl auf dem Repository-Host (--repo-host-cmd)
pgBackRest-Befehl auf dem Repository-Host.
Erforderlich nur, wenn der Pfad zum pgBackRest-Befehl auf dem lokalen und dem Repository-Host unterschiedlich ist. Wenn nicht definiert, wird der Repository-Host-Befehl auf den gleichen Wert wie der lokale Befehl gesetzt.
Veralteter Name: backup-cmd
Option für die Konfiguration des Repository-Hosts (--repo-host-config)
pgBackRest-Konfigurationsdatei auf dem Repository-Host.
Legt den Speicherort der Konfigurationsdatei auf dem Repository-Host fest. Dies ist nur erforderlich, wenn sich die Repository-Host-Konfigurationsdatei an einem anderen Ort befindet als die lokale Konfigurationsdatei.
Veralteter Name: backup-config
Option für zusätzliche Konfigurationsdateien auf dem Repository-Host (--repo-host-config-include-path)
Pfad zu zusätzlichen pgBackRest-Konfigurationsdateien auf dem Repository-Host.
Legt den Pfad für zusätzliche Konfigurationsdateien auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom entsprechenden lokalen Pfad abweicht.
Option für den Konfigurationspfad des Repository-Hosts (--repo-host-config-path)
pgBackRest-Konfigurationspfad auf dem Repository-Host.
Legt den Konfigurationspfad auf dem Repository-Host fest. Dies ist nur erforderlich, wenn dieser Pfad auf dem Repository-Host vom lokalen Konfigurationspfad abweicht.
Option für die Schlüsseldatei des Repository-Hosts (--repo-host-key-file)
Schlüsseldatei für den Repository-Host.
Weist nach, dass das Client-Zertifikat von seinem Eigentümer gesendet wurde.
Option für den Port des Repository-Hosts (--repo-host-port)
Port des Repository-Hosts, wenn repo-host gesetzt ist.
Mit dieser Option einen anderen als den Standardport für das Protokoll des Repository-Hosts angeben.
HINWEIS: Bei
repo-host-type=sshgibt es keinen Standardwert fürrepo-host-port. In diesem Fall wird der Port verwendet, der für den durchcmd-sshangegebenen Befehl konfiguriert ist.
Veralteter Name: backup-ssh-port
Option für den Protokolltyp des Repository-Hosts (--repo-host-type)
Protokolltyp für den Repository-Host.
Die folgenden Protokolltypen werden unterstützt:
ssh- Secure Shell.tls- pgBackRest-TLS-Server.
Option für den Benutzer auf dem Repository-Host (--repo-host-user)
Benutzer auf dem Repository-Host, wenn repo-host gesetzt ist.
Legt den Benutzer für Operationen auf dem Repository-Host fest. Vorzugsweise ist dies nicht postgres, sondern ein anderer Benutzer wie pgbackrest. Läuft PostgreSQL auf dem Repository-Host, kann der Benutzer postgres der Gruppe pgbackrest hinzugefügt werden. So erhält er Leserechte für das Repository, ohne dessen Inhalt versehentlich beschädigen zu können.
Veralteter Name: backup-user
Option für den Repository-Pfad (--repo-path)
Pfad zum Speichern von Backups und Archiv.
Im Repository speichert pgBackRest Backups und archiviert WAL-Segmente.
Der benötigte Speicherplatz lässt sich im Voraus oft schwer abschätzen. Am besten erstellen Sie einige Backups, erfassen die Größe verschiedener Backup-Typen (full/incr/diff) und messen die täglich erzeugte WAL-Menge. So erhalten Sie einen ungefähren Überblick über den Platzbedarf. Dieser wird sich im Laufe der Zeit mit der Entwicklung der Datenbank wahrscheinlich ändern.
Option für den S3-Bucket des Repositorys (--repo-s3-bucket)
S3-Bucket des Repositorys.
S3-Bucket, in dem das Repository gespeichert wird.
pgBackRest-Repositorys können mit repo-path=/ im Stammverzeichnis des Buckets gespeichert werden. Meist ist jedoch ein Präfix wie /repo sinnvoll, damit auch Protokolle und andere von AWS erzeugte Inhalte im Bucket gespeichert werden können.
Option für den S3-Endpunkt des Repositorys (--repo-s3-endpoint)
S3-Endpunkt des Repositorys.
Der AWS-Endpunkt sollte für die ausgewählte Region gültig sein.
Für angepasste Konfigurationen oder Tests können die Optionen repo-storage-ca-file, repo-storage-ca-path, repo-storage-host, repo-storage-port und repo-storage-verify-tls hilfreich sein.
Option für den S3-Schlüsseltyp des Repositorys (--repo-s3-key-type)
S3-Schlüsseltyp des Repositorys.
Die folgenden Typen werden unterstützt:
shared- Gemeinsame Schlüsselauto- Temporäre Anmeldeinformationen automatisch abrufenweb-id- Anmeldeinformationen für eine Web-Identität automatisch abrufenpod-id- Anmeldeinformationen für eine EKS-Pod-Identität automatisch abrufenprocess- Anmeldeinformationen durch Ausführen eines Prozesses abrufen
Option für die KMS-Schlüssel-ID des S3-Repositorys (--repo-s3-kms-key-id)
KMS-Schlüssel für das S3-Repository.
Aktiviert die serverseitige S3-Verschlüsselung mit dem angegebenen Schlüssel des AWS Key Management Service.
Option für den S3-Authentifizierungsprozess (--repo-s3-process-cmd)
Befehl für den S3-Authentifizierungsprozess.
Befehl mit optionalen Argumenten zum Abrufen temporärer S3-Anmeldeinformationen. Der erste Listeneintrag ist der Befehl; die übrigen Einträge werden als Parameter übergeben.
Der Prozess muss JSON mit den Feldern AccessKeyId, SecretAccessKey, SessionToken und Expiration ausgeben. Die Anmeldeinformationen werden vor ihrem Ablauf automatisch erneuert. Einzelheiten zum Format finden Sie unter Anmeldeinformationen aus einem Prozess
.
Option für die S3-Region des Repositorys (--repo-s3-region)
S3-Region des Repositorys.
AWS-Region, in der der Bucket erstellt wurde.
Option für die Kostenübernahme durch den S3-Anforderer (--repo-s3-requester-pays)
Kostenübernahme durch den Anforderer beim S3-Repository.
Aktiviert die S3-Kostenübernahme durch den Anforderer.
Option für die S3-Rolle des Repositorys (--repo-s3-role)
S3-Rolle des Repositorys.
Name der AWS-Rolle (nicht der vollständige ARN) zum Abrufen temporärer Anmeldeinformationen bei repo-s3-key-type=auto.
Option für den S3-Dienst des Repositorys (--repo-s3-service)
S3-Signaturdienst.
Der bei der SigV4-Authentifizierung verwendete S3-Signaturdienst. Für standardmäßige S3-Endpunkte ist der Standardwert s3. Bei einem S3-Outposts-Endpunkt auf s3-outposts setzen.
Option für den STS-Endpunkt des S3-Repositorys (--repo-s3-sts-host)
STS-Endpunkt des S3-Repositorys.
STS-Endpunkt zum Abrufen temporärer Anmeldeinformationen, wenn repo-s3-key-type=web-id konfiguriert ist. Einen regionalen Endpunkt wie sts.us-east-1.amazonaws.com angeben, um regionales STS zu verwenden. Dies kann für GovCloud, Regionen in China oder zur Verringerung der Latenz erforderlich sein.
Option für den S3-URI-Stil des Repositorys (--repo-s3-uri-style)
S3-URI-Stil.
Folgende URI-Stile werden unterstützt:
host- Mit dem Hostbucket.endpointverbinden.path- Mit dem Hostendpointverbinden und den Bucket den URIs voranstellen.
Option für den SFTP-Host des Repositorys (--repo-sftp-host)
SFTP-Host des Repositorys.
SFTP-Host, auf dem sich das Repository befindet.
Option für den Fingerabdruck des SFTP-Hosts (--repo-sftp-host-fingerprint)
Fingerabdruck des SFTP-Hosts des Repositorys.
Die Erzeugung des Fingerabdrucks für den SFTP-Host des Repositorys sollte repo-sftp-host-key-hash-type entsprechen. Den Fingerabdruck mit awk '{print $2}' ssh_host_xxx_key.pub | base64 -d | (md5sum or sha1sum) -b erzeugen. Die SSH-Hostschlüssel befinden sich normalerweise im Verzeichnis /etc/ssh.
Option für die SFTP-Hostschlüsselprüfung (--repo-sftp-host-key-check-type)
Art der SFTP-Hostschlüsselprüfung.
Die folgenden Arten der SFTP-Hostschlüsselprüfung werden unterstützt:
strict- pgBackRest fügt niemals automatisch Hostschlüssel zur Datei ~/.ssh/known_hosts hinzu und verweigert Verbindungen zu Hosts, deren Hostschlüssel geändert wurde oder in den Dateien mit bekannten Hosts fehlt. Bei dieser Option muss der Benutzer alle neuen Hosts manuell hinzufügen.accept-new- pgBackRest fügt neue Hostschlüssel automatisch zur Datei mit bekannten Hosts des Benutzers hinzu, lässt aber keine Verbindungen zu Hosts mit geändertem Hostschlüssel zu.fingerprint- pgBackRest prüft den Hostschlüssel anhand des mitrepo-sftp-host-fingerprintangegebenen Fingerabdrucks.none- Es wird keine Hostschlüsselprüfung durchgeführt.
Option für den Hash-Typ des SFTP-Hostschlüssels (--repo-sftp-host-key-hash-type)
Hash-Typ des SFTP-Hostschlüssels für das Repository.
Hash-Typ des SFTP-Hostschlüssels für das Repository. Legt den Hash-Typ fest, mit dem beim SSH-Verbindungsaufbau der Hashwert des Hostschlüssels des entfernten Systems berechnet wird. Neuere Versionen von libssh2 unterstützen neben md5 und sha1 auch sha256.
Option für den Port des SFTP-Hosts (--repo-sftp-host-port)
Port des SFTP-Hosts für das Repository.
Port des SFTP-Hosts für das Repository.
Option für den Benutzer auf dem SFTP-Host (--repo-sftp-host-user)
Benutzer auf dem SFTP-Host für das Repository.
Benutzer auf dem Host, auf dem das Repository gespeichert wird.
Option für die Datei bekannter SFTP-Hosts (--repo-sftp-known-host)
Datei mit bekannten SFTP-Hosts.
Datei mit bekannten Hosts, in der bei der Authentifizierung nach einem passenden SFTP-Host gesucht wird. Ohne Angabe durchsucht pgBackRest standardmäßig ~/.ssh/known_hosts, ~/.ssh/known_hosts2, /etc/ssh/ssh_known_hosts und /etc/ssh/ssh_known_hosts2. Sind ein oder mehrere Dateipfade konfiguriert, durchsucht pgBackRest diese nach einem passenden Eintrag. Dateipfade müssen vollständig sein oder mit einer Tilde beginnen. Die Option repo-sftp-known-host kann mehrfach angegeben werden, um mehrere Dateien mit bekannten Hosts zu durchsuchen. Für die Prüfung anhand dieser Dateien darf repo-sftp-host-fingerprint nicht angegeben sein. Siehe auch die Option repo-sftp-host-check-type.
Option für die private SFTP-Schlüsseldatei (--repo-sftp-private-key-file)
Datei mit dem privaten SFTP-Schlüssel.
Datei mit dem privaten SFTP-Schlüssel zur Authentifizierung.
Option für die öffentliche SFTP-Schlüsseldatei (--repo-sftp-public-key-file)
Datei mit dem öffentlichen SFTP-Schlüssel.
Datei mit dem öffentlichen SFTP-Schlüssel zur Authentifizierung. Bei einer gegen OpenSSL kompilierten Version optional, bei einer gegen eine andere Bibliothek kompilierten Version erforderlich.
Option für die CA-Datei des Repository-Speichers (--repo-storage-ca-file)
CA-Datei für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) eine andere als die systemweite CA-Datei verwenden.
Veraltete Namen: repo-azure-ca-file, repo-s3-ca-file
Option für den TLS-CA-Pfad des Repository-Speichers (--repo-storage-ca-path)
CA-Pfad für den Repository-Speicher.
Für Zertifikate des Speicherdienstes (z. B. S3 oder Azure) einen anderen als den systemweiten CA-Pfad verwenden.
Veraltete Namen: repo-azure-ca-path, repo-s3-ca-path
Option für den Host des Repository-Speichers (--repo-storage-host)
Host des Repository-Speichers.
Mit einem anderen Host als dem Endpunkt des Speicherdienstes (z. B. S3 oder Azure) verbinden. Dies wird üblicherweise für Tests verwendet.
Veraltete Namen: repo-azure-host, repo-s3-host
Option für den Port des Repository-Speichers (--repo-storage-port)
Port des Repository-Speichers.
Port für Verbindungen zum Endpunkt des Speicherdienstes (z. B. S3 oder Azure) oder zum angegebenen Host.
Veraltete Namen: repo-azure-port, repo-s3-port
Option für Tags im Repository-Speicher (--repo-storage-tag)
Tags für den Repository-Speicher.
Tags angeben, die Objekten hinzugefügt werden, wenn das Repository ein Objektspeicher wie S3 ist. Die Option kann wiederholt werden, um mehrere Tags hinzuzufügen.
pgBackRest bietet keine Möglichkeit, diese Tags zu ändern. Deshalb sollten sie vor dem Ausführen von stanza-create korrekt gesetzt werden, damit die Tags im gesamten Repository einheitlich sind.
Option für die Upload-Blockgröße des Repository-Speichers (--repo-storage-upload-chunk-size)
Blockgröße für Uploads in den Repository-Speicher.
Objektspeicher wie S3 erlauben das Hochladen von Dateien in Blöcken, wenn die Datei zu groß für den Arbeitsspeicher ist. Auch wenn die Datei in den Arbeitsspeicher passt, ist es speichereffizienter, den für Uploads verwendeten Speicher zu begrenzen.
Eine größere Blockgröße verbessert im Allgemeinen die Leistung, da sie die Anzahl der Upload-Anfragen verringert und es ermöglicht, mehr Dateien jeweils in einer einzelnen Anfrage statt in Blöcken hochzuladen. Nachteilig ist der höhere Speicherverbrauch. Da für jeden Prozess ein eigener Blockpuffer zugewiesen werden muss, erhöhen größere Werte für process-max den gesamten Speicherverbrauch zusätzlich.
Die zulässigen Blockgrößen unterscheiden sich je nach Speichertyp und Plattform. Beispielsweise beträgt die Mindestblockgröße bei AWS S3 5MiB. Auch die Bezeichnung variiert: Bei der Suche nach Mindest- und Höchstwerten für AWS S3 nach „part size“, für GCS nach „chunk size“ und für Azure nach „block size“ suchen.
Ist eine Datei größer als 1GiB (die maximale Dateigröße, die PostgreSQL standardmäßig erzeugt), wird die Blockgröße schrittweise bis zum zulässigen Maximum erhöht, um den Datei-Upload abzuschließen.
Option zur Zertifikatprüfung des Repository-Speichers (--repo-storage-verify-tls)
Zertifikatprüfung für den Repository-Speicher.
Mit dieser Option lässt sich die Prüfung des TLS-Serverzertifikats des Speicherdienstes (z. B. S3 oder Azure) aktivieren oder deaktivieren. Die Prüfung sollte nur für Tests oder andere Situationen mit selbstsignierten Zertifikaten deaktiviert werden.
Veraltete Namen: repo-azure-verify-tls, repo-s3-verify-ssl, repo-s3-verify-tls
Option für den Zielzeitpunkt des Repositorys (--repo-target-time)
Zielzeitpunkt für das Repository.
Der Zielzeitpunkt legt fest, welchen Stand des Repositorys Befehle auf versioniertem Speicher lesen. So lässt sich das Repository zu einem früheren Zeitpunkt lesen, um Daten wiederherzustellen, die versehentlich durch Benutzer oder durch Schadsoftware gelöscht oder beschädigt wurden.
S3, GCS und Azure unterstützen versionierten Speicher, aktivieren ihn aber im Allgemeinen nicht standardmäßig. Neben der Versionierung kann es sinnvoll sein, bei S3 die Objektsperre und bei GCS oder Azure das vorläufige Löschen zu aktivieren.
Wenn repo-target-time angegeben wird, muss auch die Option repo angegeben werden. Wahrscheinlich unterstützen nicht alle Repository-Typen die Versionierung. Im Allgemeinen ist es sinnvoll, für die Wiederherstellung ein einzelnes Repository auszuwählen.
Beim Vergleich werden Speicherzeitstempel berücksichtigt, die <= dem angegebenen Zeitstempel sind. Enthaltene Millisekunden werden abgeschnitten.
Option für den Repository-Typ (--repo-type)
Art des für das Repository verwendeten Speichers.
Die folgenden Repository-Typen werden unterstützt:
azure- Azure Blob Storage Servicecifs- Wieposix, deaktiviert jedoch Links und fsync für Verzeichnissegcs- Google Cloud Storageposix- POSIX-konforme Dateisystemes3- AWS Simple Storage Servicesftp- Secure File Transfer Protocol
Wird ein NFS-Mount als posix-Repository verwendet, gelten für pgBackRest dieselben Regeln wie in der PostgreSQL-Dokumentation beschrieben: Erstellen eines Datenbankclusters – Dateisysteme
.
20 - Versionsbefehl (version)
version.Zeigt die installierte pgBackRest-Version an.
Befehlsoptionen
Ausgabeoption (--output)
Ausgabetyp.
Die folgenden Ausgabetypen werden unterstützt:
text- Die installierte pgBackRest-Version als Text anzeigen.num- Die installierte pgBackRest-Version als Ganzzahl anzeigen.