Verwalten der Warteschlangendatenbank

 

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

Letztes Änderungsdatum des Themas: 2008-03-11

Eine Warteschlange ist ein temporärer Speicherort für Nachrichten, die auf den Eintritt in die nächste Verarbeitungsphase warten. Jede Warteschlange stellt einen logischen Satz von Nachrichten dar, die ein Transportserver in einer bestimmten Reihenfolge verarbeitet. Warteschlangen sind nur auf Servern vorhanden, auf denen die Serverfunktion Hub-Transport oder Edge-Transport installiert ist.

Microsoft Exchange Server 2007 arbeitet zum Speichern von Warteschlangennachrichten mit einer ESE-Datenbank (Extensible Storage Engine). ESE, früher als JET bezeichnet, ist ein Verfahren, das eine hardwarenahe API für die zugrunde liegenden Datenbankstrukturen in Exchange Server definiert.

Übersicht zu Warteschlangen

In Tabelle 1 sind die Warteschlangen, die auf einem Hub-Transport-Server oder einem Edge-Transport-Server vorhanden sind, zusammen mit ihren Merkmalen aufgelistet.

Tabelle 1   Auf einem Hub-Transport-Server oder einem Edge-Transport-Server vorhandene Warteschlangen

Warteschlangenname Serverfunktion Anzahl der Warteschlangen auf dem Server

Postfachzustellungswarteschlange

Hub-Transport

Eine Warteschlange für jeden eindeutigen Postfachzielserver.

Warteschlange für nicht verarbeitete Nachrichten

Edge-Transport

Hub-Transport

1

Remotezustellungswarteschlange

Edge-Transport

Hub-Transport

Edge-Transport: Eine Warteschlange für jede eindeutige SMTP-Zieldomäne (Simple Mail Transfer Protocol) oder jeden Zielsmarthost.

Hub-Transport: Eine Warteschlange für jeden eindeutigen Active Directory-Verzeichnisdienst-Remotestandort.

Übermittlungswarteschlange

Edge-Transport

Hub-Transport

1

Nicht erreichbar-Warteschlange

Edge-Transport

Hub-Transport

1

Übersicht der Warteschlangendatenbank-Dateien

Jede unterschiedliche Warteschlange wird in einer gesonderten ESE-Datenbank gespeichert. Diese Warteschlangendatenbank befindet sich standardmäßig unter C:\Programme\Microsoft\Exchange Server\TransportRoles\data\Queue.

Wie jede ESE-Datenbank verwendet die Warteschlangendatenbank Protokolldateien, um Daten zu akzeptieren, nachzuverfolgen und zu warten. Zum Verbessern der Leistung werden alle Nachrichtentransaktionen zuerst in Protokolldateien und in den Arbeitsspeicher und dann in die Datenbankdatei geschrieben. Die Prüfpunktdatei verfolgt die Transaktionsprotokolldateien nach, für die ein Commit in der Datenbank ausgeführt wurde. Während eines normalen Herunterfahrens des Microsoft Exchange-Transportdiensts wird für Änderungen an der Datenbank, für die noch kein Commit in der Datenbank vorgenommen wurde und die sich in den Transaktionsprotokollen befinden, ein Commit in der Datenbank ausgeführt.

Für die Warteschlangendatenbank wird Umlaufprotokollierung verwendet. Dies bedeutet, dass der Verlauf der Transaktionen, für die ein Commit ausgeführt wurde und die sich in den Transaktionsprotokollen befinden, nicht erhalten bleibt. Alle Transaktionsprotokolle, die älter als der aktuelle Prüfpunkt sind, werden sofort und automatisch gelöscht. Daher können die Transaktionsprotokolle für die Wiederherstellung der Warteschlangendatenbank nicht aus der Sicherung wiedergegeben werden.

In Tabelle 2 sind die Dateien aufgelistet, aus denen die Warteschlangendatenbank besteht.

In Tabelle 2 sind die Dateien aufgelistet, aus denen die Warteschlangendatenbank besteht.

Datei Beschreibung

Mail.que

In dieser Warteschlangen-Datenbankdatei sind alle in die Warteschlange eingestellten Nachrichten gespeichert.

Tmp.edb

Diese temporäre Datenbankdatei wird verwendet, um das Schema der Warteschlangendatenbank beim Starten zu überprüfen.

Trn*.log

In diesem Transaktionsprotokoll sind alle Änderungen an der Warteschlangendatenbank verzeichnet. Änderungen an der Datenbank werden zuerst in das Transaktionsprotokoll geschrieben, anschließend wird ein Commit in der Datenbank ausgeführt. Trn.log ist die aktuell aktive Transaktionsprotokolldatei. Trntmp.log ist die nächste vorgesehene Transaktionsprotokolldatei, die im Voraus erstellt wird. Wenn die Trn.log-Transaktionsprotokolldatei ihre maximale Größe erreicht, wird Trn.log in Trnnnnn.log umbenannt, wobei nnnn eine Sequenznummer ist. Trntmp.log wird anschließend in Trn.log umbenannt und wird zur aktuellen aktiven Transaktionsprotokolldatei.

Trn.chk

Diese Prüfpunktdatei verfolgt die Transaktionsprotokolldateien nach, für die ein Commit in der Datenbank ausgeführt wurde. Diese Datei befindet sich immer am gleichen Speicherort wie die Datei mail.que.

Trnres00001.jrs

Trnres00002.jrs

Diese Reserve-Transaktionsprotokolldateien dienen als Platzhalter. Sie werden nur verwendet, wenn das Festplattenlaufwerk, auf dem die Transaktionsprotokolldateien gespeichert sind, keinen ausreichenden Speicherplatz mehr aufweist, um ein ordnungsgemäßes Beenden der Warteschlangendatenbank zu ermöglichen.

Optionen für das Konfigurieren der Warteschlangendatenbank

Die Exchange-Verwaltungskonsole oder die Exchange-Verwaltungsshell kann nicht verwendet werden, um die Warteschlangendatenbank zu konfigurieren. Die Warteschlangendatenbank wird durch Bearbeiten der Datei EdgeTransport.exe.config konfiguriert, die sich unter C:\Program Files\Microsoft\Exchange Server\Bin befindet. Die Datei EdgeTransport.exe.config ist eine XML-Anwendungskonfigurationsdatei, die der Datei EdgeTransport.exe zugeordnet ist. EdgeTransport.exe und MSExchangeTransport.exe sind die Programmdateien, die vom Microsoft Exchange-Transportdienst verwendet werden. Dieser Dienst wird auf jedem Hub-Transport-Server oder Edge-Transport-Server ausgeführt. Änderungen, die an der Datei EdgeTransport.exe.config vorgenommen werden, werden beim Neustart des Microsoft Exchange-Transportdiensts angewendet.

Das folgende Beispiel stellt die Dateistruktur von EdgeTransport.exe.config im Grundsatz dar:

<configuration>

<runtime>

<gcServer enabled="true" />

</runtime>

<appSettings>

<add key=" ConfigurationOption " value=" Wert " />

...

</appSettings>

</configuration>

Im Abschnitt <appSettings> können neue Konfigurationsoptionen hinzugefügt oder vorhandene Konfigurationsoptionen geändert werden. Es stehen außerdem viele Konfigurationsoptionen zur Verfügung, die nicht mit der Warteschlangendatenbank zusammenhängen. Sie liegen jedoch außerhalb des Themenbereichs dieses Themas und werden daher hier nicht erörtert.

Hinweis

Bei den Parameternamen im Abschnitt <add key=../> ist Groß- und Kleinschreibung zu beachten.

Die Konfigurationsoptionen für die Warteschlangendatenbanken, die in der Datei EdgeTransport.exe.config zur Verfügung stehen, sind in Tabelle 3 beschrieben.

Tabelle 3   Konfigurationsoptionen für die Nachrichtendatenbank in der Datei "EdgeTransport.exe.config"

Parametername Beschreibung

QueueDatabaseBatchSize

Dieser Parameter gibt die Anzahl der Datenbank-E/A-Vorgänge an, die vor der Ausführung in einer Gruppe zusammengefasst werden können. Der Standardwert ist 40. Für jede empfangene Nachricht werden die E/A-Kosten auf Grundlage der Anzahl der Empfänger in der Nachricht und der Größe der Nachricht abgeleitet. Wenn die E/A-Kosten einer Nachricht den im Parameter QueueDatabaseBatchSize angegebenen Wert überschreiten, wird diese Nachricht sofort an die Warteschlangendatenbank übermittelt. Andernfalls wird sie zusammen mit anderen empfangenen Nachrichten gemeinsam an die Warteschlangendatenbank übergeben.

warningAchtung:
Ändern Sie diesen Parameter nur, wenn Sie dazu von einem Mitarbeiter des Microsoft-Produktsupports aufgefordert werden.

QueueDatabaseBatchTimeout

Dieser Parameter gibt den maximalen Zeitraum in Millisekunden an, die die Datenbank auf die Gruppierung mehrerer Datenbank-E/A-Vorgänge wartet, bevor sie ausgeführt werden. Die Datenbank-E/A-Vorgänge werden ohne Warten auf weitere Vorgänge ausgeführt, wenn die folgenden Bedingungen erfüllt sind:

  • Die Anzahl der Datenbank-E/A-Vorgänge, die im Parameter QueueDatabaseBatchSize angegeben ist, wurde nicht erreicht.

  • Der im Parameter QueueDatabaseBatchTimeout angegebene Zeitraum ist verstrichen.

Der Standardwert ist 100.

QueueDatabaseMaxConnections

Dieser Parameter gibt die Anzahl der ESE-Datenbankverbindungen an, die geöffnet sein dürfen. Der Standardwert ist 4.

QueueDatabaseLoggingBufferSize

Dieser Parameter gibt den Arbeitsspeicher an, der zum Zwischenspeichern von Transaktionsdatensätzen vor dem Schreiben in die Transaktionsprotokolldatei verwendet wird. Der Standardwert ist 524288 Byte.

QueueDatabaseLoggingFileSize

Dieser Parameter gibt die maximale Größe der einzelnen Transaktionsprotokolldateien an. Wenn die maximale Größe der Protokolldatei erreicht wird, wird eine neue Protokolldatei geöffnet. Der Standardwert ist 5242880 Byte.

QueueDatabaseLoggingPath

Dieser Parameter gibt das Standardverzeichnis für die Protokolldateien der Warteschlangendatenbank an. Der Standardwert lautet C:\Programme\Microsoft\Exchange Server\TransportRoles\data\Queue. Überprüfen Sie vor dem Ändern des Protokollierungsverzeichnisses für die Warteschlangendatenbank, ob das neue Verzeichnis vorhanden ist. Überprüfen Sie außerdem, ob die folgenden Dateiberechtigungen darauf angewendet werden: Netzwerkdienst: Vollzugriff; System: Vollzugriff; Administratoren: Vollzugriff.

QueueDatabaseMaxBackgroundCleanupTasks

Dieser Parameter gibt die maximale Anzahl von Arbeitselementen der Hintergrundbereinigung an, die zu jeder Zeit in der Warteschlange des Datenbankmodul-Threadpools eingestellt sein können. Der Standardwert ist 32.

QueueDatabaseOnlineDefragEnabled

Der Parameter aktiviert oder deaktiviert die geplante Onlinedefragmentierung der Nachrichtenwarteschlangen-Datenbank. Der Standardwert ist $true.

QueueDatabaseOnlineDefragSchedule

Dieser Parameter gibt die Tageszeit zum Starten der Onlinedefragmentierung der Nachrichtenwarteschlangen-Datenbank im 24 Stunden-Format an. Um einen Wert anzugeben, geben Sie den Wert als Zeitraum ein: hh:MM:SS, wobei h = Stunden, M = Minuten und S = Sekunden angibt. Der Standardwert ist 1:00:00 oder 1:00 AM.

QueueDatabaseOnlineDefragTimeToRun

Dieser Parameter gibt die Uhrzeit an, zu der dem Onlinedefragmentierungstask die Ausführung erlaubt ist. Selbst wenn der Defragmentierungstask nicht in der angegebenen Zeit abgeschlossen wird, wird die Datenbank in einem konsistenten Zustand zurückgelassen. Um einen Wert anzugeben, geben Sie den Wert als Zeitraum ein: hh:MM:SS, wobei h = Stunden, M = Minuten und S = Sekunden angibt. Der Standardwert ist 3:00:00.

QueueDatabasePath

Dieser Parameter gibt das Standardverzeichnis für die Dateien der Warteschlangendatenbank an. Der Standardwert lautet C:\Programme\Microsoft\Exchange Server\TransportRoles\data\Queue. Überprüfen Sie vor dem Ändern des Verzeichnisses für die Warteschlangendatenbank, ob das neue Verzeichnis vorhanden ist. Überprüfen Sie außerdem, ob die folgenden Dateiberechtigungen darauf angewendet werden: Netzwerkdienst: Vollzugriff; System: Vollzugriff; Administratoren: Vollzugriff.

Weitere Informationen

Weitere Informationen zu Warteschlangen finden Sie unter Verwalten von Warteschlangen.

Weitere Informationen zum Ändern des Speicherorts der Warteschlangendatenbank finden Sie unter Ändern des Speicherorts der Warteschlangendatenbank.