Verwalten des Datenbankprotokollwachstums über das Skript "Troubleshoot-DatabaseSpace.ps1" in der Shell

 

Gilt für: Exchange Server 2010 SP2, Exchange Server 2010 SP3

Letztes Änderungsdatum des Themas: 2016-11-28

Das Skript Troubleshoot-DatabaseSpace.ps1 wird von Microsoft System Center Operations Manager 2007 dazu verwendet, ein übermäßiges Wachstum des Protokolls oder der Microsoft Exchange-Datenbankdatei (EDB), das bei Nichtbeachtung zu einem Datenbankausfall führen kann, zu erkennen und zu beheben. Standardmäßig führt System Center Operations Manager 2007 das Skript alle 15 Minuten aus. Sie können das Skript jedoch mithilfe der Aufgabenplanung konfigurieren und ausführen, um das Wachstum von Datenbankprotokoll und -datei zu überwachen.

Hinweis

Ein Skript muss über den Ordner ausgeführt werden, in dem es sich befindet. Mit Exchange 2010 installierte Skripts werden standardmäßig im Pfad "C:\Programme\Microsoft\Exchange Server\V14\Scripts" installiert. Skripts werden in der Shell nicht automatisch geladen. Allen Skripts muss das Präfix ".</STRONG>" vorangestellt werden, um ein Skript aus der lokalen Datei auszuführen. Geben Sie beispielsweise .\SampleScript.ps1 ein, um das Skript "SampleScript.ps1" auszuführen. Geben Sie "C:\Programme\Microsoft\Exchange Server\V14\Scripts\SampleScript.ps1" ein, um ein Skript auszuführen und den standardmäßigen Installationspfad anzugeben. Weitere Informationen finden Sie unter Skripterstellung mit der Exchange-Verwaltungsshell.

Das Skript Troubleshoot-DatabaseSpace.ps1 führt die folgenden Aktionen aus:

  1. Es verfolgt die Protokollgenerierungsrate für die größten Protokollgeneratoren pro Datenbank. Auf diese Weise lässt sich feststellen, welche Benutzer zu viel protokollieren und dadurch möglicherweise Speicherprobleme verursachen.

  2. Es verfolgt den verfügbaren Speicherplatz für Datenbank- und für Protokolldateien. Falls dieser einen konfigurierbaren Schwellenwert erreicht, müssen weitere Maßnahmen ergriffen werden.

  3. Es verfolgt die Protokollgenerierungsrate. Falls die Gefahr besteht, dass innerhalb des durch den Parameter HourThreshold angegebenen Werts (basierend auf der Protokollgenerierungsrate) nicht mehr genügend Speicherplatz auf dem Datenträger zur Verfügung steht, müssen weitere Maßnahmen ergriffen werden.

    Hinweis

    Stellen Sie zur Vermeidung kritischer Probleme sicher, dass der Wert für den Parameter HourThreshold hoch genug ist, damit Sie während der normalen Geschäftsstunden reagieren können, während genügend Speicherplatz zur Verfügung steht. Falls der Speicherplatz auf den Laufwerken schneller belegt wird als durch den Wert festgelegt, müssen sofortige Maßnahmen zum Schutz des Datenträgers ergriffen werden.

  4. Sind alle vorgenannten Bedingungen erfüllt, ermittelt das Skript eine Liste der Benutzer, die in der letzten Stunde am häufigsten auf die Datenbank zugegriffen haben. Das Skript isoliert dann die Postfächer mit der höchsten Nutzungsrate, bei denen die Summe der Protokollgenerierungsrate höher ist als der Unterschied zwischen der aktuellen Generierungsrate und der tragbaren Generierungsrate, die ein kurzfristiges Überschreiten des konfigurierbaren Zeitschwellenwerts zulassen würde. Diese Benutzer werden für sechs Stunden isoliert und haben in dieser Zeit keinen E-Mail-Zugriff.

  5. Falls es trotz dieser Problembehandlung nicht gelingt, die Protokollgenerierungsrate unter den Schwellenwert zu bringen, schreibt sie Ereignisse aus, die in Statusmodellwarnungen übersetzt werden. Dann entfernt das Skript die Datenbank aus der Bereitstellung, indem es das Cmdlet Set-MailboxDatabase, dessen Parameter ExcludeFromProvisioning auf $true festgelegt ist, für die jeweilige Datenbank ausführt. U. U. müssen Sie Postfächer auf einen neuen Server verschieben, um den Speicherplatz auszugleichen.

  6. Falls von der Problembehandlung mehr als zehn Benutzer isoliert werden, weist dies auf einen Systemfehler hin, dem Sie nachgehen müssen. Das Statusmodell löst bei dieser Bedingung eine dringende Warnung aus.

Die im Skript Troubleshoot-DatabaseSpace.ps1 verwendeten Standardeinstellungen sind im Skript StoreTSConstants.ps1 definiert.

Möchten Sie wissen, welche anderen Verwaltungsaufgaben es im Zusammenhang mit Datenbanken gibt? Weitere Informationen finden Sie hier: Verwalten von Postfachdatenbanken.

Verwenden des Skripts "Troubleshoot-DatabaseSpace.ps1"

Bevor Sie dieses Verfahren ausführen können, müssen Ihnen die entsprechenden Berechtigungen zugewiesen werden. Informationen zu den von Ihnen benötigten Berechtigungen finden Sie unter "Postfachdatenbanken" im Thema Postfachberechtigungen.

Im folgenden Parametersyntaxsatz und in der Tabelle sind die Parameter aufgeführt, die zum Verschieben bestimmter Postfächer verwendet werden können:

Troubleshoot-DatabaseSpace.ps1 -MailboxDatabaseName <DatabaseID> [-PercentEdbFreeSpaceThreshold <1-99>] [-PercentLogFreeSpaceThreshold <1-99>] [-HourThreshold <1- 1000000000>] [-Quarantine <switch>] [-MonitoringContext <switch>]
Troubleshoot-DatabaseSpace.ps1 -Server <ServerID> [-PercentEdbFreeSpaceThreshold <1-99>] [-PercentLogFreeSpaceThreshold <1-99>] [-HourThreshold <1- 1000000000>] [-Quarantine <switch>] [-MonitoringContext <switch>]
Parameter Erforderlich Beschreibung

MailboxDatabaseName

Erforderlich

Der Parameter MailboxDatabaseName gibt die Postfachdatenbank an, deren Protokollwachstum Sie überwachen.

Dieser Parameter akzeptiert die folgenden Werte:

  • GUID

  • Distinguished Name (DN)

  • Datenbankname

Hinweis

Dieser Parameter kann nicht gemeinsam mit dem Parameter Server verwendet werden.

Server

Erforderlich

Der Parameter Server gibt den Postfachserver an, auf dem Sie das Protokollwachstum aller Postfachdatenbanken überwachen.

Hinweis

Dieser Parameter kann nicht gemeinsam mit dem Parameter MailboxDatabaseName verwendet werden.

HourThreshold

Optional

Der Parameter HourThreshold gibt die Anzahl der Stunden an, bis kein Speicherplatz mehr verfügbar ist. Der Standardwert ist 12 Stunden.

MonitoringContext

Optional

Der Parameter MonitoringContext gibt an, ob Überwachungsereignisse in den Befehlsergebnissen in die regulären Anwendungsprotokolle in der Ereignisanzeige und in das Vorgangsprotokoll geschrieben werden. Wenn Sie diesen Wert nicht angeben, wird das Vorgangsprotokoll an die folgende Stelle in der Ereignisanzeige geschrieben:

Ereignisanzeige > Anwendungs- und Dienstprotokolle > Microsoft-Exchange-Troubleshooters/Operational.

Für diesen Parameter muss kein Wert angegeben werden.

PercentEdbFreeSpaceThreshold

Optional

Der Parameter PercentEdbFreeSpaceThreshold gibt den Prozentsatz des Speicherplatzes für die EDB-Datei an, bei dem Exchange mit der Isolierung von Benutzern beginnen sollte. Wenn Sie z. B. zehn Prozent angeben, beginnt Exchange mit der Isolierung der Hauptbenutzer, wenn der Befehl erkennt, dass auf der Festplatte aufgrund des Wachstums der EDB innerhalb des im Parameter HourThreshold festgelegten Zeitraums nicht mehr genügend Speicherplatz verfügbar sein wird.

Der Standardwert für diesen Parameter ist 25 Prozent.

PercentLogFreeSpaceThreshold

Optional

Der Parameter PercentLogFreeSpaceThreshold gibt den Prozentsatz des Speicherplatzes für die Protokolldateien an, bei dem Exchange mit der Isolierung von Benutzern beginnen sollte. Wenn Sie z. B. zehn Prozent angeben, beginnt Exchange mit der Isolierung der Hauptbenutzer, wenn der Befehl erkennt, dass auf der Festplatte aufgrund des Protokollwachstums innerhalb des im Parameter HourThreshold festgelegten Zeitraums nicht mehr genügend Speicherplatz verfügbar sein wird.

Der Standardwert für diesen Parameter ist 25 Prozent.

Quarantine

Optional

Der Parameter Quarantine gibt an, dass Hauptbenutzer isoliert werden. Wenn Sie diesen Parameter nicht angeben, werden keine Benutzer isoliert.

Für diesen Parameter muss kein Wert angegeben werden.

Beispiel

In diesem Beispiel wird das Skript Troubleshoot-DatabaseSpace.ps1 mit den folgenden Einstellungen ausgeführt:

  • Die Warnungen sind auf zehn Prozent freien Speicherplatz auf dem Volume mit den Datenbankprotokollen und zehn Prozent freien Speicherplatz in der Datenbankdatei und dem dazugehörigen Volume festgelegt.

  • Der Stundenschwellenwert ist auf fünf Stunden festgelegt.

Wenn die Problembehandlung bei diesen Einstellungen feststellt, dass der freie Speicherplatz auf der Festplatte innerhalb von fünf Stunden bei einer Kapazität von zehn Prozent oder weniger liegen wird, isoliert er die Hauptbenutzer.

.\Troubleshoot-databasespace.ps1 -server MBX01 -PercentLogFreeSpace 10 -PercentEDBFreeSpace 10 -HourThreshold 5 -Quarantine

Hinweis

In diesem Beispiel wird gezeigt, wie der Befehl einmal manuell ausgeführt wird. Damit der Problembehandlung die Daten zur Verfügung stehen, die sie für die effektive Überwachung des Servers oder der Datenbank benötigt, müssen Sie diesen Befehl regelmäßig ausführen. Wenn sie diesen Task einrichten möchten, sollten Sie die Aufgabenplanung im Microsoft Windows-Betriebssystem verwenden. Weitere Informationen finden Sie unter Aufgabenplanung (Übersicht).

Anzeigen der Ausgabe der Problembehandlung für das Protokollwachstum

Die Ergebnisse des Skripts Troubleshoot-DatabaseSpace.ps1 sind an folgender Stelle in der Ereignisanzeige verfügbar: Ereignisanzeige > Anwendungs- und Dienstprotokolle > Microsoft-Exchange-Troubleshooters/Operational.

Im Folgenden finden Sie beispielsweise eine Ausgabe der Ereignis-ID 5101. Diese Ausgabe wird bei einer fehlerfreien Ausführung des Skripts zurückgegeben.

Die Problembehandlung für den Datenbankspeicherplatz auf Volume "D:\" für Datenbank "MBD01" wurde abgeschlossen. Es wurden keine Probleme erkannt.

Freier Speicherplatz auf dem EDB-Laufwerk: 151938752512 B

Freier Speicherplatz auf dem Protokolllaufwerk: 151845265408 B

Schwellenwert für freien Speicherplatz auf dem EDB-Laufwerk: 10 %

Schwellenwert für freien Speicherplatz auf dem Protokolllaufwerk: 10 %

Stundenschwellenwert: 12 h

Aktuelle Wachstumsrate: 314572800 B/h

In der folgenden Tabelle wird die Ereignis-ID, die Beschreibung des Ereignisses und ggf. die durchzuführende Aktion angezeigt.

Hinweis

Bei den Beschreibungen in dieser Tabelle handelt es sich um Beispiele für die Informationen, die in den Ereignissen enthalten sein können.

Ereignis-ID Beschreibung Aktion

5100

Die Problembehandlung für den Datenbankspeicherplatz hat auf Volume "D:\" für Datenbank "MBD01" begonnen.

Nur zur Information. Es ist keine Aktion erforderlich.

5101

Die Problembehandlung für den Datenbankspeicherplatz auf Volume "D:\1" für Datenbank "MBD01" wurde abgeschlossen. Es wurden keine Probleme erkannt.

Nur zur Information. Es ist keine Aktion erforderlich.

5400

Die Problembehandlung für den Datenbankspeicherplatz auf Volume "D:\1" für Datenbank "MBD01" wurde abgeschlossen. Die Datenbank liegt über dem erwarteten Schwellenwert. Benutzer wurden isoliert, damit Speicherplatz zur Verfügung steht.

Warnungsereignis: Die Überwachung wird fortgesetzt. Benutzer werden für sechs Stunden isoliert und können nicht auf ihre Postfächer zugreifen.

5401

Die Problembehandlung für den Datenbankspeicherplatz auf Volume "D:\1" für Datenbank "MBD01" wurde abgeschlossen. Die Datenbank liegt über dem erwarteten Schwellenwert, wächst aber nicht mit ungewöhnlicher Rate. Es wurde keine Aktion ausgeführt.

Warnungsereignis: Die Überwachung wird fortgesetzt.

5410

Bei der Problembehandlung für den Datenbankspeicherplatz wurde das Postfach "f3bb8007-b6d1-45f5-b748-211d66fa43f6" auf der Datenbank "MBD01" isoliert.

Warnungsereignis: Dieses Ereignis wird mit dem Ereignis 5400 erstellt. Die Überwachung wird fortgesetzt.

5700

Die Problembehandlung für den Datenbankspeicherplatz auf Volume "D:\1" für Datenbank "MBD01" wurde abgeschlossen. Die Datenbank liegt über dem erwarteten Schwellenwert und wächst weiter. Ein Benutzereingriff ist erforderlich.

Dieses Fehlerereignis weist darauf hin, dass der Datenbankspeicherplatz den Schwellenwert für freien Speicherplatz überschritten hat. Führen Sie den Microsoft Exchange Server-Benutzermonitor (Exmon) aus, um Benutzer oder Dienste zu erfassen, die ein übermäßiges Protokollwachstum verursachen. Weitere Informationen finden Sie unter Microsoft Exchange Server-Benutzermonitor (möglicherweise in englischer Sprache).

5701

Bei der Problembehandlung für den Datenbankspeicherplatz wurde ein geringer Speicherplatz auf Volume "D:\" für Datenbank "MBD01" festgestellt Die Bereitstellung für diese Datenbank wurde deaktiviert. Auf der Datenbank sind weniger als 10 Prozent freier Speicherplatz verfügbar.

Dieses Fehlerereignis weist darauf hin, dass die Datenbank aus der Bereitstellung entfernt wurde. In diesem Fall führt das Skript das Cmdlet Set-MailboxDatabase, dessen Parameter ExcludeFromProvisioning auf $true festgelegt wurde, für die angegebene Datenbank aus. Sobald das Speicherplatzproblem für die Datenbank behoben wurde, müssen Sie die Bereitstellung für die Postfachdatenbank manuell wieder aktivieren.

U. U. müssen Sie Postfächer auf einen neuen Server verschieben, um den Speicherplatz auszugleichen.

5702

Bei der Problembehandlung für den Datenbankspeicherplatz wurde ein geringer Speicherplatz auf Volume "D:\" für Datenbank "MBD01" festgestellt. Die Bereitstellung für diese Datenbank wurde deaktiviert. Auf der Datenbank sind weniger als 10 Prozent freier Speicherplatz verfügbar.

Dieses Fehlerereignis weist darauf hin, dass auf der Datenbank, die aus der Bereitstellung entfernt wurde, nur noch sehr wenig Ressourcen verfügbar sind.

In diesem Fall führt das Skript das Cmdlet Set-MailboxDatabase, dessen Parameter ExcludeFromProvisioning auf $true festgelegt wurde, für die angegebene Datenbank aus. Sobald das Speicherplatzproblem für die Datenbank behoben wurde, müssen Sie die Bereitstellung für die Postfachdatenbank manuell wieder aktivieren.

U. U. müssen Sie Benutzer auf eine neue Datenbank verschieben, um den Speicherplatz auszugleichen.

 © 2010 Microsoft Corporation. Alle Rechte vorbehalten.