Eseutil /D-Defragmentierungsmodus

 

Gilt für: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

Letztes Änderungsdatum des Themas: 2009-03-16

Sie können die Option /D der Datenbankdienstprogramme für Exchange Server (Exchange Server Database Utilities, Eseutil.exe) zum Defragmentieren und Komprimieren einer Datenbank im Offlinemodus verwenden. Die Defragmentierungsoption stellt den Zusammenhang des belegten Speicherplatzes her, beseitigt nicht verwendeten Speicherplatz und komprimiert die Datenbank, wodurch die Größe der Datenbankdatei verringert wird.

Anweisungen zur Verwendung der Syntax von Eseutil /D finden Sie unter Ausführen von Eseutil /D (Defragmentierung).

Während des normalen Betriebs wird die aktuelle Größe von Datenbankdateien nie unterschritten. Wenn durch das Löschen von Elementen Speicherplatz in der Datenbank freigegeben wird, werden vorhandene Seiten nach Möglichkeit erneut verwendet. Normalerweise wächst eine Microsoft Exchange Server-Datenbank mehrere Monate, nachdem sie in Betrieb genommen wurde, dann stabilisiert sich die Größe der Datenbank nach einiger Zeit.

Unter normalen Bedingungen wird durch eine Offlinedefragmentierung nicht dauerhaft erheblicher Speicherplatz freigegeben. Die Datei neigt dazu, erneut auf ihre Größe vor der Defragmentierung anzuwachsen.

Funktionsweise der Eseutil-Defragmentierung

Als Teil des Defragmentierungsvorgangs erstellt Eseutil eine neue Datenbank, die sämtliche Informationen aus der ursprünglichen Datenbank enthält. Nachdem die Defragmentierung angeschlossen ist, wird die ursprüngliche Datenbank gelöscht oder an einem vom Benutzer angegebenen Speicherort gespeichert, und die neue Version wird in den Namen der ursprünglichen Version umbenannt. Wenn das Tool einen fehlerhaften Datensatz erkennt, wird es beendet und eine Fehlermeldung angezeigt.

Wenn eine Offlinedefragmentierung ausgeführt wird, erstellt Exchange eine temporäre Kopie der Datenbankdatei. Tabellen aus der Datenbankdatei bleiben erhalten und werden in die temporäre Datenbank kopiert, leere Seiten hingegen entfernt und Indizes erneut erstellt. Da diese Aktion bewirkt, dass physikalische Seitennummern in der Datenbank geändert werden, werden die Seiten nicht unverändert kopiert. Die Seitenlinks zwischen Seiten werden alle aktualisiert, und alle in der Datenbank verbliebenen Seiten werden Integritätsprüfungen unterzogen.

Erforderliche Zeit für das Defragmentieren einer Datenbank

Die Zeitspanne, die für den Abschluss der Defragmentierung erforderlich ist, hängt davon ab, zu welchem Prozentsatz die Datenbank leer ist, nicht von der Größe der Datenbankdatei. Die Defragmentierung einer 100 GB großen Datenbank mit 10 GB Daten dauert ungefähr genau so lange wie die Defragmentierung einer 11 GB großen Datenbank mit 10 GB Daten.

Standardmäßig wird die temporäre Datenbank nach Abschluss der Defragmentierung automatisch zur neuen Produktionsdatenbank, und die ursprüngliche Produktionsdatenbankdatei wird gelöscht. Die für die Defragmentierung erforderliche Zeitspanne kann erheblich verringert werden, wenn auf den gleichen logischen Laufwerken ebenso viel freier Speicherplatz vorhanden ist wie von den ursprünglichen Datenbankdateien belegt wird. In diesem Fall kann die temporäre Datenbank auf dem gleichen logischen Laufwerk gespeichert werden, und die endgültige Kopie ist fast sofort verfügbar.

Es wird nicht empfohlen, ein Netzlaufwerk zum Speichern der temporären Datenbank zu verwenden. Wenn ein Netzlaufwerk für die temporäre Datenbank verwendet wird, dauert die Defragmentierung länger, und jeder vorübergehende oder dauerhafte Netzwerkfehler beendet den Defragmentierungsvorgang. Da die Defragmentierung nicht wiederaufgenommen werden kann, müssen Sie sie erneut von Beginn an starten.

Hinweis

Sie benötigen nur so viel zusätzlichen Speicherplatz auf dem logischen Laufwerk wie die endgültigen Dateien nach der Defragmentierung belegen. Es ist zwar unmöglich, die genaue Größe des Speicherplatzes vorherzusagen, der gewonnen wird, Sie sollten jedoch empfohlene 110 Prozent freien Speicherplatz auf dem Datenträgerlaufwerk belassen.

Bestimmen des freien Speicherplatzes in einer Datenbank

Die Menge an freiem Speicherplatz, der in einer Exchange-Datenbankdatei verfügbar wird in einem Ereignis angezeigt, das im Ereignisprotokoll protokolliert wird, nachdem eine Onlinedefragmentierung der Datenbank ausgeführt wurde. Die Onlinedefragmentierung wird automatisch während der normalen Datenbankwartung ausgeführt. Außerdem wird das Ereignis im Ereignisprotokoll selbst dann protokolliert, wenn die zugehörige Protokollierstufe auf Kein festgelegt ist. Für Postfach- oder Öffentliche Ordner-Datenbanken wird ein Ereignis im Ereignisprotokoll protokolliert, das dem folgenden Ereignis ähnelt: 

Ereignistyp: Informationen

Ereignisquelle: MSExchangeIS-Postfachspeicher

Ereigniskategorie: Allgemein

Ereignis-ID: 1221

Datum: 8/16/2006

Uhrzeit: 9:15:00

Benutzer: nicht zutreffend

Computer: Computername

Beschreibung: Die Datenbank "Speichergruppe\Postfachdatenbank" besitzt nnn MB freien Speicherplatz, nachdem die Onlinedefragmentierung abgeschlossen wurde.

Hinweis

In Exchange Server 2007 enthält die Nachrichtenbeschreibung der Ereignis-ID 1221 den folgenden Text: Die Datenbank "Speichergruppe\Postfachdatenbank" besitzt nnn MB freien Speicherplatz, nachdem die Onlinedefragmentierung abgeschlossen wurde. Speichergruppe ist der Name der Speichergruppe, Postfachdatenbank ist der Name der Postfachdatenbank und nnn ist der verfügbare freie Speicherplatz in MB. Computername ist der Name des Computers mit Exchange Server.

Für Warteschlangendatenbanken (Transportdatenbanken, die auf Computern mit Exchangegespeichert sind, auf denen die Serverfunktion Edge-Transport oder Hub-Transport installiert ist) wird ein Ereignis im Ereignisprotokoll protokolliert, das dem folgenden Ereignis ähnelt:

Ereignistyp: Informationen

Ereignisquelle: MSExchangeTransport

Ereigniskategorie: Komponenten

Ereignis-ID: 7007

Datum: 8/16/2006

Uhrzeit: 1:00:02

Benutzer: nicht zutreffend

Computer: Computername

Beschreibung: Die Onlinedefragmentierung wurde für die Datenbank mail.que abgeschlossen. Die Datenbank besitzt nnn freie Bytes.

Hinweis

Im Beispiel oben ist nnn der verfügbare freie Speicherplatz in Byte. Computername ist der Name des Computers mit Exchange Server.

Eine andere Methode zum Bestimmen des freien Speicherplatzes ist das Ausführen eines Speicherplatzdumps mit Eseutil /ms für eine Offlinedatenbankdatei. (Führen Sie beispielsweise den folgenden Befehl aus: eseutil /ms Mailbox Database.edb). Der Speicherplatzdump gibt eine Tabelle aus. Entnehmen Sie der Tabelle den Wert aus der Spalte "Availablecolumn", und multiplizieren Sie diesen mit der Seitengröße, um den freien Speicherplatz für die Datenbankdatei zu bestimmen. Weitere Informationen zum Dateidumpmodus von Eseutil finden Sie unter Dateiabbildmodus Eseutil /M.

Geeignete Zeitpunkte zum Ausführen von "Eseutil /D"

Es sind verschiedene Situationen denkbar, in denen Eseutil /D zum Defragmentieren einer Exchange-Datenbank ausgeführt werden sollte. In der folgenden Liste werden einige dieser Situationen beschrieben:

  • In der Datenbank ist eine erhebliche Menge an freiem Speicherplatz vorhanden, der freigegeben werden kann und nicht erneut verwendet wird.

  • Es liegen Fehler des Typs ESE -1018 vor, die sich auf die Indizes einer Datenbankdatei auswirken. In solchen Fällen werden die Indizes durch die Offlinedefragmentierung erneut erstellt. Das Ausführen einer Offlinedefragmentierung beseitigt diese Fehler effektiv.

  • Eine Datenbankdatei wurde mithilfe von Eseutil /P repariert. Nach dem Ausführen der Reparatur sollte die Eseutil-Offlinedefragmentierung für die Datenbankdatei durchgeführt werden.

  • In einer Warteschlangendatenbankdatei, die auf einem Exchange 2007 Hub-Transport- oder Edge-Transport-Server gespeichert ist, tritt ein Nachrichtenansturm auf. Ein Nachrichtenansturm ist eine große Anzahl von E-Mail-Nachrichten, die die Transportwarteschlange schneller füllen, als der Transportdienst die E-Mail-Nachrichten verarbeiten kann. Dieses Verhalten führt dazu, dass die Warteschlange mit Nachrichten gefüllt wird und die Warteschlangendatenbank bei Bedarf erweitert wird. Nachdem die Nachrichten aus diesem Nachrichtenansturm verarbeitet wurden und eine Onlinedefragmentierung der Datenbank ausgeführt wurde, verbleibt eine bestimmte Menge freier Speicherplatz in der Datenbank. Führen Sie Eseutil /D aus, um eine Offlinedatenbankdefragmentierung durchzuführen und so diesen freien Speicherplatz freizugeben und die Datenbank zu verkleinern.

Ungeeignete Zeitpunkte zum Ausführen von "Eseutil /D"

Es sind verschiedene Situationen denkbar, in denen Eseutil /D zum Defragmentieren einer Exchange-Datenbank nicht ausgeführt werden sollte. In der folgenden Liste werden einige dieser Situationen beschrieben:

  • Die Eseutil-Offlinedefragmentierung sollte nicht als Standardwartungsaufgabe ausgeführt werden. Exchange führt jede Nacht eine automatische Onlinedefragmentierung aus, die die tägliche Routinewartung von Exchange übernimmt. Für tägliche, monatliche oder jährliche Wartungsaufgaben besteht kein Grund, eine Offlinedefragmentierung auszuführen.

  • Die Eseutil-Defragmentierung sollte nicht ausgeführt werden, wenn sich die Datenbank nicht in einem konsistenten Zustand befindet.

  • Die Eseutil-Offlinedefragmentierung sollte nicht ausgeführt werden, wenn eine verfügbare Datenbank vorhanden ist, in die Postfächer verschoben werden können. Diese Vorgehensweise verringert die Ausfallzeiten für Endbenutzer. Da die Offlinedefragmentierung offline durchgeführt wird, müssen Benutzer während der Defragmentierung nicht auf ihre Postfächer zugreifen. Um die Auswirkungen auf Endbenutzer zu verringern, wird empfohlen, die Postfächer mithilfe des Vorgangs zum Verschieben von Postfächern in eine andere Datenbank zu verschieben, wenn eine solche verfügbar ist. Weitere Informationen finden Sie unter Verschieben von Postfächern.

  • Die Eseutil-Offlinedefragmentierung sollte nicht ausgeführt werden, wenn Fehler des Typs ESE -1018 den Datenteil der Datenbankdatei betreffen. In einem solchen Fall erkennt die Offlinedefragmentierung den Fehler und wird beendet.

Weitere Informationen

Weitere Informationen zu Eseutil finden Sie unter den folgenden Themen: