Exchange Logfiles bereinigen

Exchange Logfiles sind eine häufige Ursache für ein volles Laufwerk auf einem Exchange-Server. Darauf folgt das Problem, dass keine Emails mehr empfangen oder gesendet werden können.

Aus diesem Grund sollte für die Bereinigung der Logfiles eine Windows-Sicherung oder eine Systemsicherung mit einem Drittanbieter-Tool eingerichtet sein, damit die Logfiles automatisch rotiert werden.

Wenn dies aber nicht eingerichtet oder funktioniert hat, erfahren Sie hier mehrere Möglichkeiten, wie Sie die Logfiles dennoch bereinigen können. Die unterschiedlichen Methoden können zum Teil eine Downtime erfordern.

Es gibt 3 Möglichkeiten, wie die Logfiles bereinigt werden können:

  1. Simulation eines Backup-Prozesses über den VSS Writer des Systems
  2. Datenbank aushängen und Logfiles manuell bereinigen – mit Downtime
  3. Logfiles direkt im Explorer löschen – gefährlich

Simulation eines Backup-Prozesses über den VSS Writer des Systems

Dies ist der ungefährlichste Weg die Logfiles zu bereinigen und benötigt auch keine Downtime. Allerdings darf der Exchange-Server keine VSS-Fehler oder andere Backup-Fehler aufweisen.

Öffnen Sie ein CMD-Fenster als Administrator und geben Sie folgenden Befehl ein:

diskshadow

Fügen Sie das Laufwerk hinzu, auf dem die Exchange Logfiles liegen (hier z.B. C:\)

add volume C:

Starten Sie eine Backup-Session:

begin backup

Starten Sie nun den VSS writer mit dem Befehl:

create

Das Laufwerk wird nun für die Schattenkopie vorbereitet. Sie sollten nun folgendes Bild zu sehen bekommen:

Teilen Sie nun dem Server mit, dass das simulierte Backup beendet ist:

end backup

Die gesamte Befehlszeile sollte wie folgt aussehen:

Im Ereignislog sollten Sie nun einen Eintrag wie diesen hier vorfinden, der Ihnen mitteilt, dass Logfiles gelöscht wurden:

Damit wurden die Logfiles nun entfernt und Sie haben wieder Speicherplatz auf dem Server gewonnen.

Diese Art ersetzt allerdings nicht die Exchange-Sicherung. Gehen Sie auf Nummer sicher. Wir übernehmen gerne die Sicherung für Sie. Melden Sie sich gerne bei uns, wir beraten Sie rund um das Thema Sicherung.

Datenbank aushängen und Logfiles manuell bereinigen – mit Downtime

In dieser Variante wird eine Downtime benötigt, da die Exchange Postfachdatenbank ausgehängt werden muss. Damit sind alle Postfächer auf der ausgehängten Datenbank während der Zeit der Bereinigung nicht verfügbar. Die Bereinigung nimmt je nach Menge der Logfiles mehr oder weniger Zeit in Anspruch.

Öffnen Sie die Exchange Admin Console (https://[exchangeserver]/ecp) und navigieren Sie über Server zu den Datenbanken. Wählen Sie hier die Datenbank aus und mit einem Klick auf das 3-Punkte-Menü erhalten Sie den Eintrag Einbindung aufheben.

Nach dem Aushängen empfiehlt es sich, die Integrität der Datenbank mit folgendem Befehl zu überprüfen:

eseutil /mh [Datenbankpfad und -Datei]

Bei einer Standard-Installation befindet sich die Datenbank an folgendem Ort:

C:\Program Files\Microsoft\Exchange Server\Vxx\Mailbox\Mailbox Database xxxxxxxxxx

In beiden Fällen sollte ein Clean Shutdown zu sehen sein.

Wenn dies der Fall ist können Sie nun die Logfiles manuell über den Explorer löschen.

Nachdem die Dateien gelöscht wurden hängen Sie die Datenbank einfach wieder ein. Dies geschieht wieder über die ECP, nur das in diesem Fall der Punkt Einbinden ausgewählt wird.

Exchange Logfiles direkt im Explorer löschen – gefährlich

Dieser Punkt ist gefährlich, da hierbei die Konsistenz der Datenbank gefährdet ist. Werden noch nicht „committete“ Logfiles gelöscht, so landet die Datenbank in einem unbekannten Zustand. In diesem Fall ist eine Reparatur der Datenbank nötig, im schlimmsten Fall sogar eine Wiederherstellung.

Nutzen Sie diesen Weg nur dann, wenn

  • kein simuliertes Backup wie oben beschrieben durchführen können
  • die Aufhebung der Einbindung der Datenbank nicht möglich ist
  • Sie sich um Datenverlust keine Gedanken machen müssen

Öffnen Sie den Explorer und navigieren zu dem Pfad mit den Logfiles:

Filtern Sie nun nach Datum und wählen Sie alle Logfiles älter als X Tage aus. Je größer der Wert von X ist, desto geringer ist das Risiko, korrupte Daten zu erhalten.

Im Anschluss sollte die Datenbankintegrität mit folgendem Befehl geprüft werden:

eseutil /mh [Datenbankpfad und -Datei]

Hierzu muss allerdings die Datenbank ausgehängt werden.

Sascha Jelinek