Remote-Sicherungen und -Wiederherstellungen
Das Dienstprogramm gbak
von Firebird kann Backups einer entfernten Datenbank erstellen.Dazu müssen Sie eine Verbindung zum Service Manager herstellen, der auf dem Remote-Server ausgeführt wird. Dies wird normalerweise als service_mgr
bezeichnet.Das folgende Beispiel zeigt, wie die Firebird-Mitarbeiterdatenbank auf dem Server tuxrep vom Server tux gesichert wird.Die Sicherung wird auf den Remote-Server geschrieben, dh die Sicherungsdatei wird auf dem Server tuxrep und nicht auf dem Server tux erstellt.Das verwendete Netzwerkprotokoll ist TCP.
tux> # Berichtsdatenbank auf Remote-Server tuxrep sichern tux> gbak -backup -service tuxrep:service_mgr employee /backups/remote_backup.fbk
Die Sicherungsdatei hat denselben Eigentümer und dieselbe Gruppe wie der Firebird-Datenbankserver — zumindest auf Unix-Systemen.
Es ist auch möglich, eine entfernte Datenbank auf diese Weise wiederherzustellen, und gbak
erlaubt dies.
tux> # Stelle die schreibgeschützte Berichtsdatenbank auf dem Remote-Server tuxrep wieder her. tux> gbak -replace -mode read_only -service tuxrep:service_mgr \ /backups/remote_backup.fbk employee
Note
|
Das obige Beispiel verwendet die praktische Unix-Fähigkeit, eine lange Zeile über viele kürzere zu teilen, wobei ein Schrägstrich als letztes Zeichen in der Zeile verwendet wird. |
Wie immer wird empfohlen, sich vor dem Ersetzen einer Datenbank zu hüten, falls während der Wiederherstellung Probleme auftreten.Im obigen Beispiel wird die vorhandene Datenbank im schreibgeschützten Modus neu erstellt. Dies muss jedoch nicht immer der Fall sein.
Eine Remote-Sicherung kann auch auf dem Datenbankserver selbst ausgeführt werden!Unter Windows macht dies keinen Unterschied, aber auf Unix-Systemen reduziert diese lokal-entfernte Methode zum Sichern und Wiederherstellen den Netzwerkverkehr.Der 'Remote'-Server ist in diesem Fall nicht wirklich entfernt. Es ist nur die Methode zum Ausführen der Sicherung — herstellen einer Verbindung zum Service Manager --, die die Entfernung impliziert.
tux> # Sichern der Mitarbeiterdatenbank auf diesem Server, aber pseudo-remote! tux> gbak -backup -service tux:service_mgr employee /backups/remote_backup.fbk
Entsprechende Wiederherstellungen können auch 'remote' ausgeführt werden:
tux> # Restore the employee database on this server, but pseudo-remotely! tux> gbak -replace -service tux:service_mgr /backups/remote_backup.fbk employee
Das Format des Parameters, der für den service
-Schalter verwendet wird, unterscheidet sich je nach Art des verwendeten Netzwerkprotokolls:
- TCP
-
Bei Verwendung von TCP-Netzwerken ist das Parametertrennzeichen ein Doppelpunkt, wie in
-service server_name:service_mgr
. - Named pipes
-
Bei Verwendung von
Named Pipes
benötigt der Parameter zwei führende Backslashes und der Separator selbst ist ebenfalls ein Backslash, wie in-service \\server_name\service_mgr
.