SQL Datenbank nach Datenrettung wiederherstellen

IT-SCHMIDT

Neues Mitglied
Hallo Team,
ein ehemaliges Unternehmen hatte noch einen Arbeitsplatz der Office Line 5.1 für Datenaustausch im Einsatz. Nun gab es einen Festplattencrash des ESXi Servers. Laut Datenrettungsdienst konnten die vmdk-Dateien des ESXi Servers nicht wieder hergestellt werden, da mehrere Festplatten im RAID System defekt waren. Es konnten jedoch innerhalb der vmdk-Festplatte die MDF- und LDF-Dateien der Datenbank wieder hergestellt werden.

Über sp_attach_db kann die Datenbank nicht dem SQL Server hinzugefügt werden.

Vor vielen Jahren konnte ich eine defekte DBs folgendermaßen herstellen:
• Letzte funktionierende Datenbank zurückgesichert.
• SQL Server Dienst angehalten.
• Gleichnamige MDF- und LDF-Dateien der Datenbank am Speicherort der wiederhergestellten DB ersetzt.
• SQL Server Dienst gestartet. Über das SQL Managementstudio kann nicht auf die DB zugegriffen werden.
• ALTER DATABASE <Datenbankname> SET EMERGENCY
• ALTER DATABASE <Datenbankname> SET SINGLE_USER
• DBCC CHECKDB (<Datenbankname>, REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS, ALL_ERRORMSGS
• Je nachdem wie viele Zuordnungsfehler oder Konsistenzfehler gefunden wurden, konnte die Datenbank wieder hergestellt werden.
• ALTER DATABASE <Datenbankname> SET ONLINE
• ALTER DATABASE <Datenbankname> SET MULTI_USER

Dieses Mal erhalten ich schon nach dem SET EMERGENCY immer den gleichen Fehler:

SQL Server hat einen logischen, konsistenzbasierten E/A-Fehler gefunden: Ungültige Schutzoption. Der Fehler ist beim Lesen von Seite (1:0) in der Datenbank mit der ID 5 bei Offset 0000000000000000 in der Datei 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\<Datenbankname>.MDF' aufgetreten. Weitere Informationen finden Sie möglicherweise in anderen Fehlermeldungen im SQL Server-Fehlerprotokoll oder im Systemereignisprotokoll. Dies ist ein schwerer Fehler, der die Datenbankintegrität bedroht und sofort behoben werden muss. Führen Sie eine vollständige Überprüfung der Datenbankkonsistenz aus (DBCC CHECKDB). Dieser Fehler kann durch viele Faktoren verursacht werden. Weitere Informationen finden Sie in der SQL Server-Onlinedokumentation.

Das SQL Server-Fehlerprotokoll gibt die gleichen Fehler so auch die Windows Ereignisanzeige.

Da nicht sicher war welcher SQL Server im Einsatz war, habe ich die Wiederherstellung von SQL 2019 bis 2012 durchprobiert. Leider ohne Erfolg.

Hier nun meine Frage. Ist so eine DB überhaupt wiederherstellbar? Wenn ja, wie kann ich die DB reparieren?
Ich freue mich auf jede Rückmeldung.
Viele Grüße
Samuel Schmidt
 
Hast du denn schon mal ausgeführt, was in der Meldung steht?
Führen Sie eine vollständige Überprüfung der Datenbankkonsistenz aus (DBCC CHECKDB).
Code:
DBCC CHECKDB (DB-Name)

ALTER DATABASE DB-Name SET SINGLE_USER

DBCC CHECKDB (N'DB-Name', REPAIR_ALLOW_DATA_LOSS) WITH ALL_ERRORMSGS, NO_INFOMSGS
GO

ALTER DATABASE DB-Name SET MULTI_USER
 
Die Version 5.1 ist übrigens so alt (2010/2011), dass ich eher SQL Server 2005 oder 2008 (ggf. 2008 R2) vermuten würde. SQL 2012 und höher waren damals bestimmt noch nicht freigegeben.
 
Zurück
Oben