Reparatur einer Microsoft Exchange Datenbank

Wenn sich bei einem Exchange 2000 oder 2003 Server die Datenbank nicht mehr mounten lässt kann man versuchen diese mit den Kommandozeilen-Tools ESEUTIL und ISINTEG zu reparieren (ab Exchange 2007 wurden diese Tools in die Exchange Management Console eingebaut und können dort aufgerufen werden). Man sollte jedoch etwas Zeit mitbringen und vorher eine Datensicherung machen. Microsoft weißt nämlich explizit darauf hin, dass durch diese Tools auch Daten verloren gehen können und bei einer Datenbankgröße von 50 GB kann der Vorgang schon mal einen ganzen Tag dauern. Während der Reparatur wird jeweils im aktuellen Pfad eine temporäre Datenbank erstellt, die ca. 20% der alten Datenbankgröße benötigt. Der Pfad dieser Datenbank kann bei Bedarf mit dem Schalter /t geändert werden.

Im folgenden nun die einzelnen Schritte, mit denen ich bis jetzt die besten Erfolge beim reparieren einer Microsoft Exchange Datenbank erzielt habe:

  • SMTP Server anhalten (falls noch aktiv)
  • „ESEUTIL /MH DATENBANK“ ausführen
    Zeigt den Status der Datenbank an.
  • „ESEUTIL /P DATENBANK“ ausführen
    Diese Option versucht eine defekte Datenbank wieder „clean“ zu bekommen, indem diese komplett neu aufgebaut wird und fehlende Verbindungen und Seiten dabei einfach entfernt werden.
  • „ISINTEG.EXE -s -fix -test alltests“ ausführen
    Falls Tool nicht läuft, Transaction Logs in ein Backupverzeichnis verschieben. Auftretende Warnungen können ignoriert werden, sollten jedoch Fehler angezeigt werden, muss ISINTEG.EXE -s -fix -test alltests solgange wiederholt werden, bis keine Fehler mehr auftreten.