Zur Hauptseite ... Zum Onlinearchiv ... Zum Abonnement ... Zum Newsletter ... Zu den Tools ... Zum Impressum ... Zum Login ...

Achtung: Dies ist nicht der vollständige Artikel, sondern nur ein paar Seiten davon. Wenn Sie hier nicht erfahren, was Sie wissen möchten, finden Sie am Ende Informationen darüber, wie Sie den ganzen Artikel lesen können.

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

Gedrucktes Heft

Diesen Beitrag finden Sie in Ausgabe 3/2007.

Unser Angebot für Sie!

Lesen Sie diesen Beitrag und 500 andere sofort im Onlinearchiv, und erhalten Sie alle zwei Monate brandheißes Access-Know-how auf 72 gedruckten Seiten! Plus attraktive Präsente, zum Beispiel das bald erscheinende Buch 'Access 2010 - Das Grundlagenbuch für Entwickler'!

Diesen Beitrag twittern

Zusammenfassung

Stellen Sie Ihre Datenbank nach einem Crash mit Hilfe der Datenbanksicherung wieder her.

Techniken

SQL Server Management Studio Express, T-SQL

Voraussetzungen

SQL Server Express Edition Advanced oder SQL Server Express Edition mit SQL Server Management Studio Express

Beispieldatei

RestoreDB.bak, Beispiel_Voll.bak, Beispiel_Diff.bak, Beispiel_Log.bak

Shortlink

462

Wiederherstellung von SQL Server-Datenbanken

Bernd Jungbluth, Horn

Defekte Rechner, Festplattencrashs, beschädigte Datenbankdateien, irrtümlich gelöschte Daten – Gründe, um auf eine Datenbanksicherung zurückzugreifen, gibt es mehr, als einem lieb ist. In einem solchen Moment heißt es in erster Linie „Ruhe bewahren – Sicherheit ausstrahlen“ und um die Möglichkeiten wissen, die der Microsoft SQL Server für die Wiederherstellung einer Datenbanksicherung bietet.

Der Umfang einer Wiederherstellung kann unterschiedlich sein. In einigen Fällen mag es ausreichen, lediglich die beschädigten Datenbankdateien wieder herzustellen, während in anderen Fällen zunächst ein neuer Server aufgesetzt werden muss, da der alte den Geist aufgegeben hat, bevor der eigentliche Prozess der Wiederherstellung gestartet werden kann.

Egal, welche Ausmaße eine Wiederherstellung annimmt – früher oder später kommen Sie an den Punkt, dass aus der Sicherungsdatei eine Datenbank erstellt werden muss.

Der Microsoft SQL Server bietet dafür einige Möglichkeiten, die über die einfache Rekonstruktion einer Datenbank hinausgehen. Sie können beispielsweise die Datenbank nur bis zu einem bestimmten Zeitpunkt wiederherstellen, um dadurch eine fehlerhafte Eingabe wieder ungeschehen zu machen, oder aber Sie „zweckentfremden“ die Sicherungsdateien als Installationsdateien.

Letzteres wird das erste Szenario dieses Artikels sein, denn die der Heft-CD beiliegende Datenbanksicherung soll auf einem anderen Server – im besten Fall auf Ihrem PC – installiert werden.

Installation einer Datenbank durch
Wiederherstellung

Die Sicherungsdatei enthält die Voll-, differenziellen und Transaktionsprotokollsicherungen der RestoreDB-Datenbank. Sie können diese Datenbank gefahrlos auf Ihrem Rechner installieren, denn es handelt sich dabei um die Ihnen bestimmt bekannte Nordwind-Datenbank.

Kopieren Sie die Sicherungsdatei RestoreDB.bak auf Ihren Rechner und starten Sie das SQL Server Management Studio Express (SSMSE). Dort öffnen Sie den Dialog Datenbank wiederherstellen mit dem gleichnamigen Befehl aus dem Kontextmenü des Eintrags Datenbanken.

Im Listenfeld In Datenbank tragen Sie den Namen RestoreDB ein. Unter diesem Namen wird die Datenbank bei der Wiederherstellung angelegt. Anschließend wählen Sie in der Gruppe Quelle für die Wiederherstellung die Option Von Medium, da die Wiederherstellung über eine Sicherungsdatei erfolgen soll. Diese bestimmen Sie im Dialog Sicherung angeben, den Sie mit der zur Option gehörenden Schaltfläche starten. Dort wird zunächst das Sicherungsmedium definiert, in diesem Fall das Medium Datei, und anschließend der Sicherungsspeicherort, also die Sicherungsdatei RestoreDB.bak, über die Schaltfläche Hinzufügen ausgewählt. Eine Datenbanksicherung kann auf mehrere Sicherungsdateien verteilt sein. Die einzelnen Dateien können Sie an dieser Stelle alle nach und nach hinzufügen. Nachdem Sie nun die Sicherungsdatei RestoreDB.bak zugeordnet haben, bestätigen Sie diese Auswahl mit OK.

Die einzelnen Sicherungssätze der Sicherungsdatei werden nun eingelesen und im Dialog Datenbank wiederherstellen in der Gruppe Wählen Sie die wiederherzustellenden Sicherungssätze aus angezeigt (s. Abb. 1).

pic001.TIF

Abb. 1: Auswahl der letzten Sicherungssätze

Systemdatenbanken

Wenn nun schon von den Systemdatenbanken die Rede ist, soll eine kurze Aufstellung über die Bedeutung und den Inhalt der einzelnen Datenbanken nicht fehlen:

master: Die master-Datenbank enthält Informationen einer SQL Server-Installation, wie die einzelnen Datenbanken, Anmeldekonten, Verbindungsserver oder Systemkonfigurationen.

model: Die model-Datenbank ist die Vorlage, mit der neue Datenbanken erstellt werden. Sofern Sie in Ihren Datenbanken immer gleiche Objekte wie Tabellen, Stored Procedures, Views oder Datenbankbenutzer, Regeln sowie eigene Datentypen verwenden, können Sie diese in der model-Datenbank anlegen.

msdb: Die msdb-Datenbank enthält Informationen über die Aktionen beziehungsweise Wartung einer SQL Server-Installation. Dazu gehören neben der Backup-Historie auch die Wartungspläne, die Aufträge des SQL Server Agenten und die DTS- beziehungsweise SSIS-Pakete und mehr.

tempdb: Die tempdb-Datenbank dient der Auslagerung von temporären Zwischenergebnissen. Hier werden u. a. die temporären Tabellen für die Dauer ihrer Verwendung gespeichert. Die tempdb wird beim Beenden des SQL Servers gelöscht und bei einem Neustart wieder erzeugt.

Diese beinhaltet mehrere Vollsicherungen, mehrere differenzielle Sicherungen und mehrere Transaktionsprotokollsicherungen.

Um die Datenbank mit den aktuellsten Daten der Sicherung wiederherzustellen, wählen Sie die letzte Vollsicherung, die letzte differenzielle Sicherung und alle der letzten differenziellen Sicherung folgenden Transaktionsprotokollsicherungen aus. Die Transaktionsprotokollsicherungen zwischen der Voll- und der differenziellen Sicherung müssen nicht markiert werden, da die dort gespeicherten Änderungen auch in der differenziellen Sicherung enthalten sind.

Bevor Sie nun zur Seite Optionen wechseln, noch ein Wort zur Option Aus Datenbank. Sofern die Datenbank dem SQL Server bekannt ist, kann sie anhand ihrer Sicherungshistorie wiederhergestellt werden. Nach Auswahl einer Datenbank aus dem zur Option gehörenden Listenfeld werden die Sicherungssätze im unteren Teil des Dialogs angezeigt.

Die Historien der Datenbanksicherungen werden in der Systemdatenbank msdb gespeichert. Insofern macht es durchaus Sinn, auch die Systemdatenbanken regelmäßig zu sichern, damit solche Informationen auch nach einem Crash zur Verfügung stehen.

Nun kennt Ihr SQL Server weder die Datenbank RestoreDB noch die bisher ausgeführten Sicherungen dieser Datenbank. Und da deswegen keine Sicherungshistorie existiert, bleibt nur die Wiederherstellung mit der Sicherungsdatei.

Auf der Seite Optionen können Sie nun für die Wiederherstellung der Datenbank noch einige nicht zwingende, aber in manchen Fällen notwendige Optionen konfigurieren. Eine für dieses Beispiel notwendige Option ist die Angabe des Speicherorts der wiederhergestellten Datenbankdateien. Die Originalspeicherorte sind in den Sicherungssätzen gespeichert und werden in der Gruppe Datenbankdateien wiederherstellen als angezeigt. Die Pfade der Datenbankdateien sollten Sie Ihrer Umgebung anpassen, um die Datenbankdateien in den Verzeichnissen erstellen zu lassen, in denen Sie Ihre Datenbanken speichern. Existiert der angegebene Pfad nicht, wird die Wiederherstellung mit einem Fehler abgebrochen.

Sollten Sie wider Erwarten bereits eine Datenbank mit dem Namen RestoreDB auf Ihrem SQL Server haben, müssen Sie die Option Vorhandene Datenbank überschreiben aktivieren, damit die bereits bestehende Datenbank vor der Wiederherstellung der Sicherungsdatei gelöscht wird.

Sofern die Sicherungsdatei eine in einer Replikation veröffentlichte Datenbank enthält, können die Replikationseinstellungen der Datenbank bei der Wiederherstellung beibehalten werden. Dazu muss die Option Replikationseinstellungen beibehalten aktiviert sein, da sonst die Einstellungen verloren gehen.

Mit der Option Zugriff auf die wiederhergestellte Datenbank einschränken wird der Zugriff auf Benutzer der Rollen sysadmin, db_owner und dbcreator begrenzt. Bei einem guten Berechtigungssystem wird dadurch verhindert, dass jeder beliebige Benutzer mit dieser neuen Datenbank arbeiten kann.

Die letzte noch nicht beschriebene Wiederherstellungsoption Bestätigung vor Wiederherstellen jeder einzelnen Sicherung verlangt von Ihnen für jeden einzelnen Sicherungssatz eine Bestätigung. Mit dieser Option erhalten Sie Gelegenheit, das Medium Ihrer Sicherungsdateien zu wechseln, sofern Sie die Sicherungsdateien auf verschiedene Medien verteilt, aber nur ein Lesegerät haben.

Wozu die Optionen in der Gruppe Wiederherstellungsstatus (s. Abb. 2) benötigt werden, erfahren Sie weiter unten.

pic002.TIF

Abb. 2: Optionen der Wiederherstellung

Sie haben das Ende des frei verfügbaren Teils des Artikels erreicht. Lesen Sie weiter, um zu erfahren, wie Sie den vollständigen Artikel lesen und auf viele hundert weitere Artikel zugreifen können.

Sind Sie Abonnent?Jetzt einloggen ...
 

Kompletten Artikel lesen?

Einfach für den Newsletter anmelden, dann lesen Sie schon in einer Minute den kompletten Artikel und erhalten die Beispieldatenbanken.

E-Mail:

© 2003-2015 André Minhorst Alle Rechte vorbehalten.