In den folgenden Szenarien müssen Sie möglicherweise eine SQL-Datenbankreparatur durchführen:
- Reparieren Sie eine Datenbank, die als verdächtig markiert ist oder sich im Status “Wiederherstellung ausstehend” befindet, so dass Sie nicht auf die Datenbankdateien zugreifen können.
- Reparieren Sie eine Datenbank, die aufgrund von Ereignissen wie Serverabsturz, Ausfall des E/A-Subsystems, Softwarefehlern, Eindringen von Viren/Malware usw. beschädigt wurde.
- Wenn Sie SQL-Fehler wie 824, 8992, 5172, usw. erhalten.
- Wenn Sie eine beschädigte Protokolldatei haben, die die Datenbank unzugänglich gemacht hat.
Lesen Sie auch: SQL Server-Produktionsdatenbank-Korruption – Ursachen und Korrekturen
Normalerweise verfügt jeder Datenbankadministrator oder SQL-Benutzer über eine Sicherungs- und Wiederherstellungsstrategie. Sie können eine SQL-Datenbank jedoch nur dann aus einer Sicherung wiederherstellen, wenn diese in einem einwandfreien Zustand ist. Außerdem müssen Sie auf die aktuellste Sicherung zurückgreifen, um Datenverluste zu vermeiden. Wenn die Sicherung jedoch beschädigt ist oder nicht aktualisiert wurde, müssen Sie sie reparieren.
Lassen Sie uns nun im Detail besprechen, wie man SQL Server 2016-Datenbanken Schritt für Schritt repariert.
SQL Server-Datenbank Schritt für Schritt reparieren
Schritte zum Reparieren der SQL-Datenbank über SSMS
Sie können eine Datenbank mit dem DBCC CHECKDB-Befehl mit ‘REPAIR_ALLOW_DATA_LOSS’ reparieren, indem Sie die folgenden Schritte in SQL Server Management Studio (SSMS) ausführen:
Schritt 1: Starten Sie SSMS. Verbinden Sie sich mit der SQL Server 2016-Instanz über Windows-Authentifizierung oder SQL Server-Authentifizierung.
Schritt 2: Klicken Sie in der Symbolleiste auf die Registerkarte Neue Abfrage. Kopieren Sie in dem sich öffnenden Abfragefenster die folgenden Befehle und fügen Sie sie in der gleichen Reihenfolge wie unten ein:
EXEC sp_resetstatus [DB_Name]
ALTER DATABASE [DB_Name] SET EMERGENCY
DBCC CHECKDB [DB_Name]
ALTER DATABASE [DB_Name] SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC CHECKDB (‘DB_Name’, REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS
ALTER DATABASE [Datenbankname] SET MULTI_USER
Hinweis: Die Ausführung des Befehls REPAIR_ALLOW_DATA_LOSS kann zu Datenverlusten führen. Wenn DBCC CHECKDB nicht funktioniert oder um Datenverlust zu verhindern, kann die Verwendung eines SQL-Reparaturwerkzeugs helfen.
Schritt 3: Klicken Sie auf die Schaltfläche “Ausführen”, um mit der Reparatur der Datenbank zu beginnen. Die
Datenbank wird repariert und ohne Fehler geöffnet.
Schritte zum Reparieren der SQL-Datenbank mit Stellar Repair für MS SQL
Stellar Repair for MS SQL ist ein fortschrittliches SQL-Reparaturtool, das von MVPs und DBAs empfohlen wird. Es hilft bei der Reparatur stark beschädigter Datenbankdateien (MDF/NDF) in wenigen einfachen Schritten. Außerdem hilft es bei der Wiederherstellung aller Datenbankobjekte zusammen mit gelöschten Datensätzen.
SQL Server 2016-Datenbank mit SQL Recovery Software reparieren
Schritt 1: Starten Sie die Software. Lesen Sie die Anweisungen, die im Hauptfenster der Software angezeigt werden, und klicken Sie dann auf OK.
Schritt 2: Wählen Sie auf dem Bildschirm “Datenbank auswählen” die primäre Datenbankdatei (.mdf) aus, die Sie reparieren möchten. Alternativ können Sie auf “Suchen” klicken, um eine MDF-Datei zu finden, wenn ihr Speicherort unbekannt ist.
Hinweis: Wenn Sie gelöschte Datensätze wiederherstellen möchten, stellen Sie sicher, dass das Kontrollkästchen “Gelöschte Datensätze einbeziehen” aktiviert ist.
Schritt 3: Nachdem Sie eine MDF-Datei ausgewählt haben, klicken Sie auf Reparieren, um den Reparaturvorgang zu starten.
Schritt 4: Wählen Sie einen geeigneten Scan-Modus, um die MDF-Datei zu reparieren. Wenn Sie die Option Standard-Scan wählen, wird die Datei schnell auf Korruptionsfehler gescannt. Um die Datei gründlich zu scannen, können Sie den erweiterten Scan wählen. Klicken Sie auf OK, um fortzufahren.
Schritt 5: Klicken Sie auf die Schaltfläche OK, sobald das Meldungsfeld “Reparatur abgeschlossen” angezeigt wird.
Schritt 6: Zeigen Sie eine Vorschau aller reparierten Dateidaten an. Wählen Sie nun alle oder bestimmte Objekte aus, die Sie speichern möchten, indem Sie auf die Schaltfläche Speichern unter Datei klicken.
Schritt 7: Die Software bietet verschiedene Optionen zum Speichern der reparierten Datenbank:
- Wählen Sie das Dateiformat (MDF/CSV/HTML/XLS), in dem Sie die reparierte Datei speichern möchten.
- Bei der Auswahl des Speicherformats der MDF-Datei können Sie wählen, ob Sie die Datenbank als neue oder als Live-DB speichern möchten. Geben Sie außerdem Details zur Verbindung mit Ihrer SQL Server-Instanz ein.
- Geben Sie den Ort an, an dem Sie die reparierte db speichern möchten.
Schritt 8: Klicken Sie auf Speichern. Nach erfolgreichem Abschluss des Speichervorgangs wird der folgende Bildschirm angezeigt.
Die reparierte Datenbank wird unter demselben Namen, aber mit dem Präfix “Repariert” am angegebenen Speicherort gespeichert.
Schlussfolgerung
In diesem Artikel haben wir über häufige Fälle gesprochen, in denen Sie eine SQL-Datenbank reparieren müssen. Bevor Sie einen Reparaturvorgang durchführen, müssen Sie zunächst versuchen, eine aktuelle Sicherung wiederherzustellen. Wenn die Sicherung jedoch beschädigt oder veraltet ist, führen Sie die in diesem Artikel beschriebenen Schritte durch, um das Problem zu lösen. Sie können DBCC CHECKDB mit der empfohlenen Reparaturoption, normalerweise REPAIR_ALLOW_DATA_LOSS, ausführen, um den Reparaturvorgang durchzuführen. Dies birgt jedoch das Risiko eines Datenverlusts. Als Alternative können Sie Stellar Repair for MS SQL verwenden, um häufige Korruptionsfehler zu beheben, die den Zugriff auf die Datenbank verhindern könnten.
Was this article helpful?