Sichern und Wiederherstellen: Systemdatenbanken (SQL Server)
Gilt für: SQL Server
SQL Server verwendet eine Reihe von Datenbanken auf Systemebene, die als Systemdatenbanken bezeichnet werden und für den Betrieb einer Serverinstanz von entscheidender Bedeutung sind. Einige der Systemdatenbanken müssen nach jedem wichtigen Update gesichert werden. Zu den Systemdatenbanken, die immer gesichert werden müssen, zählen msdb
, master
und model
. Wenn eine Datenbank die Replikation auf der Serverinstanz verwendet, müssen Sie auch die distribution
-Systemdatenbank sichern. Mit Sicherungen dieser Systemdatenbanken können Sie das SQL Server-System bei einem Systemfehler wiederherstellen, beispielsweise beim einem Ausfall einer Speichervorrichtung.
In der folgenden Tabelle werden alle Systemdatenbanken zusammengefasst.
Systemdatenbank | Beschreibung | Sicherungen erforderlich? | Wiederherstellungsmodell | Kommentare |
---|---|---|---|---|
master | In dieser Datenbank werden alle Informationen auf Systemebene für ein SQL Server-System aufgezeichnet. | Ja | Einfach | Sichern Sie die master -Datenbank so oft wie für Ihre Unternehmensanforderungen erforderlich, um die Daten ausreichend zu schützen. Wir empfehlen einen regelmäßigen Sicherungszeitplan, den Sie durch eine zusätzliche Sicherung nach umfangreicheren Updates ergänzen können. Transaktionsprotokollsicherungen von master werden nicht unterstützt. |
Modell | Die Vorlage für alle Datenbanken, die für die Instanz von SQL Server erstellt werden. | Ja | Vom Benutzer konfigurierbar1 | Sichern Sie model nur, wenn dies für Ihre Unternehmensanforderungen erforderlich ist, beispielsweise unmittelbar nach dem Anpassen der entsprechenden Datenbankoptionen.Bewährte Methode: Es wird empfohlen, dass Sie nach Bedarf ausschließlich vollständige Datenbanksicherungen von model erstellen. Da model klein ist und sich nur selten ändert, ist die Sicherung des Protokolls nicht notwendig. |
msdb | Die Datenbank, die vom SQL Server-Agent zum Planen von Warnungen und Aufträgen sowie und zum Aufzeichnen von Operatoren verwendet wird. msdb enthält außerdem Verlaufstabellen, z. B. zu Sicherung und Wiederherstellung. |
Ja | Einfach (Standard) | Sichern Sie msdb bei jeder Aktualisierung. |
Ressourcendatenbank (RDB) | Eine schreibgeschützte Datenbank mit Kopien aller Systemobjekte, die mitgeliefert werden mit SQL Server | No | Keine | Die Ressourcendatenbank befindet sich in der Datei mssqlsystemresource.mdf , die ausschließlich Code enthält. SQL Server kann die Ressourcendatenbank daher nicht sichern.Hinweis: Sie können eine datei- oder eine datenträgerbasierte Sicherung der Datei mssqlsystemresource.mdf ausführen, indem Sie die Datei als Binärdatei (.exe ) statt als Datenbankdatei behandeln. Sie können diese Sicherungen allerdings nicht mit einer SQL Server-Wiederherstellung wiederherstellen. Die Wiederherstellung einer Sicherungskopie von mssqlsystemresource.mdf kann nur manuell erfolgen. Achten Sie darauf, die aktuelle Ressourcendatenbank nicht durch eine veraltete oder potenziell unsichere Version zu überschreiben. |
tempdb | Ein Arbeitsbereich zum Speichern temporärer Resultsets oder Zwischenresultsets. Diese Datenbank wird jedes Mal neu erstellt, wenn eine Instanz von SQL Server gestartet wird. Wenn die Serverinstanz heruntergefahren wird, werden alle in tempdb enthaltenen Daten dauerhaft gelöscht. |
No | Einfach | Sie können die tempdb -Systemdatenbank nicht sichern. |
Verteilung konfigurieren | Diese Datenbank ist nur vorhanden, wenn der Server als Replikationsverteiler konfiguriert wurde. In dieser Datenbank werden Metadaten und Verlaufsdaten für alle Replikationstypen sowie Transaktionen für die Transaktionsreplikation gespeichert. | Ja | Einfach | Informationen darüber, wann die distribution -Datenbank gesichert werden sollte, finden Sie unter Sichern und Wiederherstellen von replizierten Datenbanken. |
1 Informationen zum aktuellen Wiederherstellungsmodell der Datenbank finden Sie unter Anzeigen oder Ändern des Wiederherstellungsmodells einer Datenbank (SQL Server) oder sys.databases (Transact-SQL).
Einschränkungen beim Wiederherstellen von Systemdatenbanken
Systemdatenbanken können nur aus Sicherungen wiederhergestellt werden, die für die derzeit von der Serverinstanz aufgeführte Version von SQL Server erstellt wurden. Wenn Sie beispielsweise eine Systemdatenbank auf einer Serverinstanz wiederherstellen möchten, die mit SQL Server 2016 (13.x) mit Service Pack 1 ausgeführt wird, müssen Sie eine Datenbanksicherung verwenden, die erstellt wurde, nachdem die Serverinstanz auf SQL Server 2016 (13.x) SP1 aktualisiert wurde.
Die Instanz von SQL Server muss ausgeführt werden, um eine Datenbank wiederherstellen zu können. Zum Starten einer Instanz von SQL Server muss der Zugriff auf die master
-Datenbank möglich sein, und die Datenbank muss zumindest teilweise verwendet werden können. Wenn master
nicht mehr verwendet werden kann, gibt es mehrere Methoden, um die Datenbank in einen verwendbaren Zustand zurückzuversetzen:
Wiederherstellen von
master
aus einer aktuellen Datenbanksicherung.Wenn Sie die Serverinstanz starten können, sollten Sie in der Lage sein,
master
aus einer vollständigen Datenbanksicherung wiederherzustellen. Weitere Informationen finden Sie unter Wiederherstellen der master-Datenbank (Transact-SQL).Erstellen Sie
master
ganz neu.Falls ernsthafte Schäden an
master
das Starten von SQL Server verhindern, müssen Siemaster
neu erstellen. Weitere Informationen finden Sie unter Neuerstellen von Systemdatenbanken.Wichtig
Beim von
master
werden alle Systemdatenbanken neu erstellt.
Probleme beim Wiederherstellen der model
-Datenbank können es in einigen Fällen erforderlich machen, die Systemdatenbanken neu zu erstellen oder die mdf
- und ldf
-Dateien für die model
-Datenbank zu ersetzen. Weitere Informationen finden Sie unter Neuerstellen von Systemdatenbanken.
Zugehörige Aufgaben
- Erstellen einer vollständigen Datenbanksicherung
- Vollständige Datenbankwiederherstellungen (einfaches Wiederherstellungsmodell)
- Wiederherstellen der master-Datenbank (Transact-SQL)
- Anzeigen oder Ändern des Wiederherstellungsmodells einer Datenbank (SQL Server)
- Verschieben von Systemdatenbanken