Sicherungen auf Remote-Servern (Firebird 2.5+)
Nbackup selbst arbeitet nur mit lokalen Datenbanken.In Firebird 2.5 und höher können Sicherungen und Wiederherstellungen vom Typ nbackup auch remote über den Services Manager ausgeführt werden.Hierzu wird das Programm fbsvcmgr.exe auf dem lokalen Rechner verwendet;Es befindet sich im selben Ordner wie nbackup.exe und den anderen Firebird-Befehlszeilentools.Das erste Argument ist immer “Hostname: service_mgr”, wobei hostname der Name des Remote-Servers ist.Andere verfügbare Parameter sind:
-user username -password password -action_nbak -action_nrest -nbk_level n -dbname database -nbk_file filename -nbk_no_triggers -nbk_direct on|off
Das Erstellen eines vollständigen Backups auf dem Remote-Computer frodo sieht folgendermaßen aus:
fbsvcmgr frodo:service_mgr -user sysdba -password masterke
-action_nbak -nbk_level 0
-dbname C:\databases\countries.fdb -nbk_file C:\databases\countries.nbk
Und eine nachfolgende inkrementelle Sicherung:
fbsvcmgr frodo:service_mgr -user sysdba -password masterke
-action_nbak -nbk_level 1
-dbname C:\databases\countries.fdb -nbk_file C:\databases\countries_1.nbk
Um den ganzen Schebang wiederherzustellen:
fbsvcmgr frodo:service_mgr -user sysdba -password masterke
-action_nrest -dbname C:\databases\countries_restored.fdb
-nbk_file C:\databases\countries.nbk -nbk_file C:\databases\countries_1.nbk
|
Note
|
Jeder der oben genannten Befehle sollte als einzelner Satz ohne Zeilenumbrüche eingegeben werden.Die Bindestriche vor den Parameternamen können weggelassen werden. Insbesondere bei langen Befehlen wie diesen kann es hilfreich sein, sie beizubehalten,damit Sie die einzelnen Parameter leicht identifizieren können (die Argumente erhalten keinen Bindestrich). |
Anmerkungen:
-
Der Services Manager erfordert immer eine Authentifizierung, sei es automatisch (root unter Posix, vertrauenswürdig unter Windows) oder explizit über die Parameter
-userund-password.Die UmgebungsvariablenISC_USERundISC_PASSWORDwerden nicht verwendet.AUTO ADMIN MAPPINGin der Datenbank hat keine Auswirkung auf die Remoteverbindung (obwohl dies auch von der Konfiguration des Netzwerks abhängen kann).Hinweis: Wenn die vertrauenswürdige Windows-Authentifizierung aktiviert ist, wird der Kontoname des Benutzers auf dem lokalen Computer an den
Services Managerauf dem Remotecomputer übergeben.Wenn der Eigentümer der entfernten Datenbank ein Windows-Konto (z. B.FRODO\PAUL) und kein Firebird-Konto ist, und der Name des Windows-Kontos auf dem lokalen Computer mit dem Namen des Eigentümerkontos auf dem entfernten Computer identisch ist,wird der Anfragende als Datenbankeigentümer anerkannt und darf ein Backup erstellen.Dies könnte ein Sicherheitsrisiko darstellen, da selbst in lokalen Netzwerken der BenutzerPAULauf einem Computer nicht unbedingt dieselbe Person ist wie der BenutzerPAULauf einem anderen Computer. -
Das Wiederherstellen (
-action_nrest) erfordert ebenfalls eine Authentifizierung, aber nach Überprüfung werden die Anmeldeinformationen in keiner Weise verwendet.Daher muss der Benutzer nicht der Datenbankeigentümer, SYSDBA oder Superuser sein.Bei der vertrauenswürdigen Windows-Authentifizierung muss der Benutzer auf dem Remotecomputer (auf dem sich die Datenbank befindet) überhaupt nicht vorhanden sein.Diese schwache Authentifizierung impliziert ein weiteres potenzielles Sicherheitsrisiko.Angenommen, eine vertrauliche Datenbank wird nicht unterstützt, und die Sicherungen sind auf Dateisystemebene gut geschützt.Ein durchschnittlicher Benutzer kann die Datenbank dann nicht mit nbackup wiederherstellen, da nbackup im Benutzerprozessbereich ausgeführt wird.Wenn derselbe Benutzer jedoch den Namen und den Speicherort der Sicherung kennt oder diese analog erraten kann, kann er möglicherweise auf die Datenbank zugreifen, indem er sie von
fbsvcmgrin einem öffentlichen Ordner wiederherstellen lässt.Schließlich ruftfbsvcmgrden Firebird-Server auf, der möglicherweise Zugriff auf das Backup auf Dateiebene hat.Natürlich gibt es Lösungen dafür, aber es ist wichtig, sich des Risikos bewusst zu sein. -
Der Services Manager kann auch lokal verwendet werden.In diesem Fall wird das erste Argument
service_mgrohne Hostnamen verwendet.Bei lokaler Verwendung hatAUTO ADMIN MAPPINGden beabsichtigten Effekt.Dies gilt weiterhin, wenn Sielocalhost:oder den Namen des lokalen Computers voranstellen.Die lokale Verwendung des Services Managers kann von Vorteil sein, wenn Sie keinen Dateisystemzugriff auf die Datenbank- und/oder Sicherungsdateien haben, der Firebird-Serverprozess jedoch.Wenn Sie über ausreichende Rechte verfügen, ist es praktischer, nbackup selbst mit seinen viel kürzeren Befehlen zu verwenden. -
Die Angabe von
-nbk_no_triggersoder-nbk_directmit-action_nrestführt zu einer Fehlermeldung.Nbackup selbst ist hier milder: Es ignoriert einfach die Parameter-Tund-D, wenn sie im falschen Kontext verwendet werden. -
Anstelle eines Datenbankdateinamens können Sie auch einen Alias verwenden.
-
Die Länge des Datenbankpfads (oder Alias) ist auf 255 Zeichen begrenzt.