Wiederherstellen der master-Datenbank (Transact-SQL)
Gilt für: SQL Server
In diesem Thema erfahren Sie, wie Sie die master
-Datenbank von einer vollständigen Datenbanksicherung wiederherstellen.
Warnung
Bei der Notfallwiederherstellung sollte die Instanz, in der die master
-Datenbank wiederhergestellt wird, so weit wie möglich eine exakte Übereinstimmung mit der ursprünglichen Datenbank sein. Diese Wiederherstellungsinstanz sollte mindestens die gleiche Version, Edition und Patchebene aufweisen sowie über die gleiche Auswahl an Features und die gleiche externe Konfiguration (Hostname, Clustermitgliedschaft usw.) wie die ursprüngliche Instanz verfügen. Andernfalls kann dies zu nicht definierten Verhalten der SQL Server-Instanz mit inkonsistenter Featureunterstützung führen, sodass nicht garantiert ist, dass sie brauchbar ist.
So stellen Sie die master
-Datenbank wieder her
Starten Sie die Serverinstanz im Einzelbenutzermodus.
Sie können SQL Server entweder mit den Startparametern
-m
oder-f
starten. Weitere Informationen zum Ändern der Startparameter finden Sie unter Startoptionen für den Datenbank-Engine-Dienst.Führen Sie in einer Eingabeaufforderung die folgenden Befehle aus und stellen Sie sicher, dass Sie
MSSQLXX.instance
durch den entsprechenden Ordnernamen ersetzen:cd C:\Program Files\Microsoft SQL Server\MSSQLXX.instance\MSSQL\Binn sqlservr -c -f -s <instance> -mSQLCMD
- Der Parameter
-mSQLCMD
stellt sicher, dass nur sqlcmd eine Verbindung mit SQL Server herstellen kann. - Verwenden Sie für einen Standard-Instanznamen
-s MSSQLSERVER
-c
startet SQL Server als Anwendung zur Überbrückung des Dienststeuerungs-Managers, um die Startzeit zu verkürzen
Wenn die SQL Server-Instanz aufgrund einer beschädigten
master
-Datenbank nicht gestartet werden kann, müssen Sie zuerst die Systemdatenbanken neu erstellen. Weitere Informationen finden Sie unter Neuerstellen von Systemdatenbanken.- Der Parameter
Herstellen einer Verbindung mit SQL Server mithilfe von SQLCMD über ein anderes Eingabeaufforderungsfenster
SQLCMD -S <instance> -E -d master
Um eine vollständige Datenbanksicherung des Masters wiederherzustellen, verwenden Sie die folgende RESTORE DATABASE Transact-SQL-Anweisung:
RESTORE DATABASE master FROM <backup_device> WITH REPLACE
Die REPLACE-Option weist SQL Server an, die angegebene Datenbank wiederherzustellen, selbst wenn eine Datenbank mit dem gleichen Namen bereits vorhanden ist. Die vorhandene Datenbank wird ggf. gelöscht. Für den Einzelbenutzermodus empfiehlt sich die Eingabe der RESTORE DATABASE-Anweisung im Hilfsprogramm sqlcmd. Weitere Informationen finden Sie unter Verwenden des Hilfsprogramms sqlcmd.
Wichtig
Nach der Wiederherstellung von Master wird die Instanz von SQL Server heruntergefahren, und der sqlcmd-Prozess wird beendet. Vor dem Neustarten der Serverinstanz muss der Einzelbenutzer-Startparameter entfernt werden. Weitere Informationen finden Sie unter Konfigurieren von Serverstartoptionen (SQL Server-Konfigurations-Manager).
Starten Sie die Serverinstanz normal als Dienst neu, ohne dass Startparameter verwendet werden.
Fahren Sie mit anderen Wiederherstellungsschritten fort, z.B. dem Wiederherstellen anderer Datenbanken, dem Anhängen von Datenbanken und dem Korrigieren von Benutzerabweichungen.
Beispiel
Im folgenden Beispiel wird die master
-Datenbank auf der Standardserverinstanz wiederhergestellt. In diesem Beispiel wird vorausgesetzt, dass die Serverinstanz bereits im Einzelbenutzermodus ausgeführt wird. Im Beispiel wird sqlcmd
gestartet, und es wird eine RESTORE DATABASE
-Anweisung ausgeführt, mit der eine vollständige Datenbanksicherung der master
-Datenbank vom Datenträgermedium wiederhergestellt wird: Z:\SQLServerBackups\master.bak
.
Hinweis
Bei einer benannten Instanz muss mit dem sqlcmd-Befehl die Option -S<Computername>\<Instanzname> angegeben werden.
C:\> sqlcmd
1> RESTORE DATABASE master FROM DISK = 'Z:\SQLServerBackups\master.bak' WITH REPLACE;
2> GO
Weitere Informationen
Vollständige Datenbankwiederherstellungen (einfaches Wiederherstellungsmodell)
Vollständige Datenbankwiederherstellungen (vollständiges Wiederherstellungsmodell)
Problembehandlung bei verwaisten Benutzern (SQL Server)
Anfügen und Trennen von Datenbanken (SQL Server)
Neuerstellen von Systemdatenbanken
Startoptionen für den Datenbank-Engine-Dienst
SQL Server-Konfigurations-Manager
Sichern und Wiederherstellen von Systemdatenbanken (SQL Server)
RESTORE (Transact-SQL)