Zyklische Datenbank-Sicherung

Expand / Collapse
 

Zyklische Datenbank-Sicherung


Leider stehen in den Express-Editionen vom SQL Server 2005/2008 keine Wartungspläne zur Verfügung, mit denen u.a. die zyklische Sicherung von Datenbanken eingerichtet werden kann. Erst die SQL-Server Editionen "Standard" oder höher bringen diese Funktionalität mit. Eine zyklische Sicherung einer SQL Server Express Datenbank kann aber auch mit Windows-Boardmitteln eingerichtet werden.

1. Backup-Verzeichnis einrichten

Als erstes muss ein Backup-Verzeichnis eingerichtet werden. Dieses Verzeichnis enthält, neben den Einrichtungsdateien für die zyklische Datenbanksicherung, später auch die erstelle Sicherungsdatei. Das Verzeichnis kann ein beliebiges Verzeichnis auf einem beliebigen lokalen Laufwerk sein (Netzlaufwerke werden nicht unterstützt!) - wir verwenden in der nachfolgenden Beschreibung den Pfad C:\backup

2. SQL-Skript zur Sicherung einer Datenbank anlegen

Im nächsten Schritt wird ein SQL-Skript erstellt, das eine Sicherungsdatei von einer Datenbank erstellt. Das nachfolgende SQL-Skript können Sie als Vorlage verwenden. Starten Sie den Editor (Notepad) und übertragen Sie nachfolgende Zeilen:


USE master
-- Optional vorhandene Backup-Datei löschen
EXEC sp_dropdevice 'mdPROJECTTIMER_bak'
-- Backup-Datei anlegen
EXEC sp_addumpdevice 'disk', 'mdPROJECTTIMER_bak','C:\backup\mdPROJECTTIMER.bak'
-- Datenbank sichern
BACKUP DATABASE mdPROJECTTIMER TO mdPROJECTTIMER_bak WITH INIT

Das obige SQL-Skript geht davon aus, dass die Datenbank mdPROJECTTIMER heißt. Wenn Sie bei der Anlage der Datenbank einen anderen Namen angegeben haben, ersetzen Sie bitte den Namen mdPROJECTTIMER in allen Zeilen durch den von Ihnen festgelegten Namen. Das Skript sichert die Datenbank in die Datei mdPROJECTTIMER.bak, die im Verzeichnis backup auf dem Laufwerk C: angelegt wird. 
Speichern Sie das SQL-Skript in die Datei C:\backup\mdPROJECTTIMER.sql

3. Batch-Datei zur Ausführung des SQL-Skripts anlegen

Im nächsten Schritt erstellen Sie eine Batch-Datei, die das zuvor angelegte SQL-Skript ausführt. Starten Sie den Editor (Notepad) und übertragen Sie folgende Zeile:


sqlcmd.exe -S (local)\CASIC -U sa -P Casic#2005 -i "c:\backup\mdPROJECTTIMER.sql"
copy /Y "c:\backup\mdPROJECTTIMER.bak" "\\FILESERVER\SQLBackups\mdPROJECTTIMER.bak"

In der ersten Zeile wird das SQL-Skript ausgeführt, das die Datenbank in eine Datei sichert. Hinter dem Parameter -S geben Sie den SQL-Server-Namen (für den lokalen SQL-Server können Sie auch (local) verwenden) und den Instanz-Namen an. Mit den Parametern -U (Benutzername) und -P (Passwort) geben Sie den Datenbank-Benutzer an. Verwenden Sie hier die gleichen Anmeldedaten (Benutzername und Passwort), die Sie auch im Datenbankverbindungs-Assistenten von mdPROJECTTIMER angegeben haben.
In der zweiten Zeile wird die erstellte Sicherungsdatei mdPROJECTTIMER.bak auf einen anderen Rechner kopiert (im obigen Beispiel auf den Rechner FILESERVER und dort in das Verzeichnis SQLBackups). Passen Sie den Ziel-Rechner und das Ziel-Verzeichnis entsprechend an. Es wird grundsätzlich empfohlen, die auf dem Datenbankserver erstellte Sicherungsdatei auf einen anderen (zweiten) Rechner zu kopieren, damit z.B. nach einem Festplatten-Crash des Datenbankservers immer noch auf eine Datenbanksicherung zugegriffen werden kann!
Speichern Sie die Batch-Datei unter C:\backup\mdPROJECTTIMER.bat

4. Ausführung planen

Im letzten Schritt erstellen Sie einen Task (Aufgabe), um die zuvor angelegte Batch-Datei zyklisch auszuführen. Öffnen Sie die Systemsteuerung und klicken Sie auf Geplante Tasks (Vista/7: Systemsteuerung/Verwaltung/Aufgabenplanung). Klicken Sie auf Geplanten Task hinzufügen (Vista/7: Einfache Aufgabe erstellen...). Es erscheint der Assistent zu Anlage der Aufgabe:



Klicken Sie auf die Schaltfläche Weiter.



Klicken Sie auf die Schaltfläche Durchsuchen und wählen Sie anschließend die zuvor erstellte Batchdatei mdPROJECTTIMER.bat aus.



Legen Sie fest, wann die Aufgabe ausgeführt werden soll (empfohlen: Täglich)



Geben Sie in diesem Schritt die Startzeit ein. Es wird empfohlen, die Datenbanksicherung zu einem Zeitpunkt ausführen zu lassen, in dem möglichst wenig Benutzer die Datenbank verwenden.

Geben Sie den Windows-Benutzer (nicht zu verwechseln mit dem Datenbank-Benutzer!) an, der zum Starten der Batchdatei verwendet werden soll. Wir empfehlen, hier den lokalen Administrator zu verwenden.



Schließen Sie die Einrichtung der Aufgabe mit einem Klick auf die Schaltfläche Fertig stellen ab.

5. Einrichtung testen

In der Liste Geplante Tasks erscheint nun die zuvor erstellte Aufgabe. Klicken Sie mit der rechten Maustaste auf den Eintrag mdPROJECTTIMER und wählen Sie im Kontext-Menü den Eintrag Ausführen aus. Überprüfen Sie nach der Ausführung der Batchdatei, ob im Verzeichnis C:\backup die Sicherungsdatei mdPROJECTTIMER.bak erzeugt wurde.

6. Wichtige Hinweise

Obwohl die oben beschriebene zyklische Datensicherung in der Regel gut funktioniert, erhalten Sie leider im Fehlerfall keine automatische Benachrichtigung. Es ist daher unerlässlich, immer wieder die korrekte Erstellung der Sicherungsdatei zu überprüfen: Prüfen Sie regelmäßig, ob das Dateidatum der Sicherungsdatei mdPROJECTTIMER.bak (tages-)aktuell ist.



 



Rate this Article:

Related Links



Add Your Comments


Name: *
Email Address:
Web Address:
   
  
 
 
   
Verification Code:
*
 

Details
Last Modified:10.01.2011

Last Modified By: Markus Diettrich

Type: HOWTO

Article not rated yet.

Article has been viewed 1.818 times.

Options