Die Microsoft SQL Server-Datenbank wird von mehreren mittleren und großen Unternehmen verwendet, um ihre großen Datenmengen sicher und zuverlässig zu speichern und darauf zuzugreifen. Obwohl die primäre MDF-Datei der Datenbank und die sekundäre NDF-Datei sehr zuverlässig sind, sind sie nicht davor gefeit, beschädigt zu werden.
Für die Beschädigung von SQL-Datenbankdateien kann es mehrere Gründe geben. Einer der Gründe ist die Beschädigung des Datenbank-Cluster-Index, wodurch die in den MDF- und NDF-Dateien gespeicherten Daten nicht mehr zugänglich sind.
Wie kann man überprüfen, ob der Index in SQL Server beschädigt ist?
Wenn der geclusterte Index in SQL Server beschädigt ist, erhalten Sie möglicherweise eine Fehlermeldung, die wie folgt lautet:
Server: Msg 1902, Level 16, State 3, Line 1
Cannot create more than one clustered index on table ‘Table Name’. Löschen Sie den vorhandenen geclusterten Index ‘Clustered Index Name’, bevor Sie einen weiteren erstellen.
Wenn Sie den SQL Server-Fehler 1902 nicht erhalten haben, können Sie auf folgende Weise überprüfen, ob der Cluster-Index beschädigt ist:
– Versuchen Sie, SQL Server-Daten aus einigen Zeilen abzurufen. Wenn ein Index beschädigt ist, zeigt SQL Server gelöschte oder andere Werte in den Zeilen der Datenbank an.
– Überprüfen Sie den SQL Server-Protokollbericht, um festzustellen, ob die Datensätze mehr als einmal bearbeitet wurden oder nicht. Wenn Sie feststellen, dass die Datensätze mehr als einmal bearbeitet wurden, bedeutet dies, dass der Index beschädigt ist.
Was verursacht die Beschädigung von Cluster-Indizes in MS SQL?
Eine Tabelle kann nur einen geclusterten Index haben, da der geclusterte Index die physische Speicherreihenfolge der Daten in der Tabelle bestimmt. Der SQL Server-Fehler 1902 zeigt an, dass mehr als ein geclusterter Index in der Tabelle vorhanden ist.
Wie behebt man eine Clustered Index Corruption in MS SQL?
Da eine Tabelle in einer SQL Server-Datenbank nur einen geclusterten Index haben kann, müssen alle zusätzlichen Indizes für die Tabelle als nicht geclusterte Indizes erstellt werden. Wenn Sie das Clustering der SQL-Datenbanktabelle ändern möchten, müssen Sie zuerst den vorhandenen geclusterten Index löschen, bevor Sie einen neuen erstellen.
Es gibt zwei Methoden, um eine Beschädigung im SQL Server-Clusterindex zu beheben. Sie können dies entweder tun, indem Sie: –
Wiederherstellen aus der Sicherung
– SQL-Datenbankreparatursoftware
Bevor wir fortfahren
Bevor Sie versuchen, den beschädigten geclusterten Index in der SQL-Datenbank zu reparieren, müssen Sie versuchen, die genauen Gründe für die Beschädigung zu finden. Dies können Sie mit dem integrierten Befehl DBCC CHECKDB tun. Die Ausführung dieses Befehls hilft bei der Überprüfung der logischen und physischen Integrität der Datenbank und gibt Ihnen die Datenbank-ID, die Objekt-ID und die Index-ID des beschädigten Index zurück.
DBCC CHECKDB (CorruptDBName) With No_InfoMsgs, All_ErrorMsgs,
TableResults;
GO
Nachdem Sie die Index-ID überprüft haben, können Sie einfach die geeignete Maßnahme zur Behebung des Problems wählen.
Methode 1 – Wiederherstellung vom Backup
Wenn eine Sicherungskopie der SQL Server-Datenbank vorhanden ist, kann diese jederzeit wiederhergestellt werden, um die Arbeitskopie der Datenbank des Servers zu erhalten. Diese Wiederherstellungsmethode auf Seitenebene ist jedoch nur dann sinnvoll, wenn es nur wenige Änderungen in der Datenbank gibt und nur eine einzige Seite des Indexes beschädigt wurde.
Wenn mehrere Seiten der geclusterten Datenbank beschädigt sind, müssen Sie die Wiederherstellung auf Datenbankebene durchführen.
Lesen Sie dies: Wie man eine Datenbank in SQL Server aus einer .Bak-Datei wiederherstellt, Schritt für Schritt
Methode 2 – SQL-Datenbankreparatursoftware verwenden
Die andere Möglichkeit, mit der Korruption von SQL-Datenbank-Clustern umzugehen, ist die Verwendung von SQL-Datenbank-Reparatursoftware, die in der Lage ist, korrupte oder beschädigte Microsoft SQL Server-Datenbankdateien (MDF) sicher, zuverlässig und erfolgreich zu reparieren. Die Verwendung von Software macht den Prozess schnell und eliminiert manuelle Eingriffe. Es ist auch die beste Alternative, wenn Sie kein Backup haben.
Der Weg nach vorn – Stellar Repair for MS SQL
Stellar Repair for MS SQL Software einfach behebt den Cluster-Index Problem. Es ist eine einfach zu bedienende Anwendung und bietet mehrere Vorteile zusammen mit der Reparatur der beschädigten SQL Server MDF-Dateien. Seine zusätzlichen Fähigkeiten sind wie folgt:
- Repariert beschädigte MDF- und NDF-Dateien
- Ruft Tabellen, Indizes, Trigger, Regeln, Schlüssel und Standardwerte ab
- Wiederherstellung von gelöschten Datensätzen
- Durchsuchen und Wiederherstellen bestimmter Datenbankobjekte
- Speichert reparierte Dateien in den Dateiformaten MDF (New MS SQL Database oder Live MS SQL Database), XLS, CSV und HTML
- Unterstützt MS SQL Server 2019, 2017, 2016 und niedrigere Versionen
Was this article helpful?