Da Sie mit dem T-SQL- BACKUP DATABASEBefehl nicht vertraut sind , dachte ich, ich würde einige Details dazu hinzufügen.
Sie möchten wahrscheinlich etwas in der Art der folgenden Anweisung über den Windows Task Scheduler-Dienst ausführen, da Sie keinen Zugriff auf den SQL Server-Agenten haben (aus Ihren anderen Fragen geht hervor, dass Sie SQL Server Express verwenden).
BACKUP DATABASE [xyz]
TO DISK = 'C:\somepath\mybackupfile.bak'
MIRROR TO DISK = 'D:\somepath\myotherbackupfile.bak'
WITH FORMAT
, INIT
, SKIP
, STATS = 1;
Möglicherweise möchten Sie unbedingt in Betracht ziehen, dass die MIRROR TOKlausel auf einen Speicherort verweist, der sich nicht auf Ihrem lokalen Computer befindet. Wenn Sie Ihren lokalen Computer vollständig verlieren, können Sie möglicherweise nicht auf eine der Sicherungsdateien zugreifen. Wenn Sie eine MIRROR TOKlausel angeben, müssen Sie das FORMATSchlüsselwort in der WITHKlausel angeben, wenn Sie diese Sicherungsanweisung zum ersten Mal ausführen.
Sie können den Namen einer Windows-Freigabe verwenden, z. B. \\SomeServer\SQLBackups\MyBackupFile.baksolange die Sicherheitsberechtigungen für die Freigabe den Zugriff auf den Windows Scheduler-Dienst zulassen.
Der WITH FORMAT, INITTeil weist SQL Server an, alle vorhandenen Sicherungen in den Sicherungsdateien zu überschreiben. Sie können dies ändern, WITH NOINITsobald Sie die erste gespiegelte Sicherung abgeschlossen haben, wenn mehrere Sicherungen (dh Sicherungen zu unterschiedlichen Zeitpunkten) in diesen Dateien gespeichert werden sollen. NOSKIPweist SQL Server unter anderem an, nicht nach dem Ablauf der Sicherung zu suchen. STATS = 1zeigt die Ausgabe in 1Prozentschritten an. Sie können diese Nummer beliebig ändern. Ich verwende es 1für sehr große Datenbanken, da es Hinweise auf Fortschritte gibt.
Damit dies über den Windows Task Scheduler-Dienst ausgeführt wird, müssen Sie diesen Befehl (nachdem Sie ihn in SQL Server Management Studio getestet haben) in einer Datei auf Ihrer Festplatte speichern. Nennen wir es C:\somefolder\BackupMyDB.sql. Anschließend möchten Sie dem Windows-Planer den folgenden Befehl hinzufügen:
<path to sqlcmd>sqlcmd -S localhost -E -i C:\somefolder\BackupMyDB.sql
Sie möchten, dass diese Aufgabe als Sie ausgeführt wird.
Sobald Sie dies alles getan haben, möchten Sie ernsthaft darüber nachdenken, das Backup auf einem anderen Computer wiederherzustellen , damit Sie verstehen, wie das geht. Backups sind nur ein Teil eines Disaster Recovery-Plans. Der wohl wichtigere Teil ist das Testen dieses Plans.
Der Wiederherstellungsprozess würde einen Befehl wie den folgenden verwenden:
RESTORE DATABASE [xyz]
FROM DISK = 'D:\somepath\myotherbackupfile.bak'
WITH RECOVERY
, STATS = 1;
Seien Sie gewarnt, RESTORE DATABASEwenn Sie auf dem Computer ausgeführt werden, auf dem sich Ihre aktuelle Datenbank befindet, kann die aktuelle Datenbank ohne Bestätigung oder Warnung überschrieben werden. Überprüfen Sie daher den Namen der Datenbank [xyz]in meinem Beispiel und die anderen von Ihnen verwendeten Optionen sorgfältig . (Dadurch wird die vorhandene Datenbank nur überschrieben, wenn Sie REPLACEder WITHKlausel das Schlüsselwort hinzufügen. Ich möchte nur betonen, dass Sie vorsichtig sind.)