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
-user
und-password
.Die UmgebungsvariablenISC_USER
undISC_PASSWORD
werden nicht verwendet.AUTO ADMIN MAPPING
in 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 Manager
auf 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 BenutzerPAUL
auf einem Computer nicht unbedingt dieselbe Person ist wie der BenutzerPAUL
auf 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
fbsvcmgr
in einem öffentlichen Ordner wiederherstellen lässt.Schließlich ruftfbsvcmgr
den 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_mgr
ohne Hostnamen verwendet.Bei lokaler Verwendung hatAUTO ADMIN MAPPING
den 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_triggers
oder-nbk_direct
mit-action_nrest
führt zu einer Fehlermeldung.Nbackup selbst ist hier milder: Es ignoriert einfach die Parameter-T
und-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.