SQL Datenbank - Wiederherstellung steht aus

SQL Datenbanken können durch eine Vielzahl von Ereignissen zerstört werden und sind nicht mehr erreichbar. In vielen Fällen ist die MDF defekt oder die LDF Datei fehlt.

Achtung: Unbedingt vorher ein Backup erstellen. Ihr handelt auf eigenes Risiko

SQL Datenbanken können durch eine Vielzahl von Ereignissen zerstört werden und sind nicht mehr erreichbar. In vielen Fällen ist die MDF defekt oder die LDF Datei fehlt.

Zu den Ereignissen, die eine Datenbank zerstören können gehören

  • Systemabstürze
  • Virus Attaken
  • Appikationsfehler
  • defekter Arbeitsspeicher
  • Festplattenausfälle

In vielen Fällen kann die Datenbank gelöscht (Backup nicht vergessen, z.B. Datenbank offline schalten und MDF und LDF Dateien kopieren) werden und die MDF Datei über Datenbank anfügen wieder eingebunden werden. Fehlt aber z.B durch einen Festplattencrash das Logfile (ldf) kann es vorkommen das der Status der Datenbank auf "restore pending" (Wiederherstellung steht aus) steht.

Ich konnte mir wie folgt helfen (SQL Query):

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)
ALTER DATABASE <db_name> SET MULTI_USER

Besser ist natürlich eine vorhandene Datensicherung einzuspielen :-)