Suchindex Mailbox-Datenbanken

Hallo Freunde der Sonne,

ich weis ja nicht ob Sie es schon wussten…aber:

Manchmal klagen Benutzer – zumeist ca. 4 Wochen nach einer Migration über fehlende Mails im Suchindex von Exchange. Lassen Sie sich nicht vom verzögerten Schmerz-Empfinden einiger Benutzer täuschen und verfahren Sie wie folgt (in einer Zeit in der der Exchange relativ entspannt ist):

Suchindex Mailbox-Datenbanken

Ablauf dieses Artikels – also notfalls von unten hoch lesen:

  1. Finden der verfügbaren Datenbanken
  2. Aktivieren der Indizierung der Objekte der Datenbank (Katalogisierung)
  3. Erzwingen der Neuerstellung eines Datenbank-Index-Katalogs
  4. Überprüfen des Status der Indexierung

Die Vorgänge werden über die PowerShell mit Exchange-Erweiterungen abgebildet, kein GUI-Schubsen!

1. Finden der verfügbaren Datenbanken

Öffnen eine PowerShell mit Exchange-Erweiterungen und gibt folgendes Kommando ein,
die Ausgabe-Formatierung zeigt sogleich ob die Indexierung der Datenbank überhaupt aktiviert ist:

Get-MailboxDatabase | Format-Table Name,IndexEnabled


Eigentlich sollten bei einer guten Dokumentation alle Datenbanken auch ohne nachschauen bekannt sein. ;P

2. Aktivieren der Indizierung der Objekte der Datenbank (Katalogisierung)

Relativ einfach, was man abfragen kann, kann man auch setzen:

Set-MailboxDatabase „<Mailbox-Datenbank>“ -IndexEnabled $true

3. Erzwingen der Neuerstellung eines Datenbank-Index-Katalogs

Nun kommt der eigentliche Trick, sehr oft im Netz beschrieben, aber schlecht auffindbar mit zusammenhängenden Befehlen – Experts Exchange leitet auch nur auf die Technet-Seite weiter um das eigentliche Problem zu lösen.
Im Technet ist das unten genannte Skript nur für Exchange 2007 dokumentiert, daher schwer auffindbar unter Exchange 2010. Das Skript liegt aber auch unter Exchange 2010 vor.

Erst öffnen Sie falls nicht schon getätigt die Exchange-PowerShell,
dann wechseln Sie in das Exchange-Skript-Verzeichnis (Standard-Installationspfade):

cd C:Program FilesMicrosoftExchange ServerV14Scripts


Nun weisen Sie per Skript an den alten Katalog zu löschen und neu anzulegen.
Der Katalog selbst ist immer als Ordner „Catalog…“ im Verzeichnis der Mailbox-Datenbank aufzufinden.

(Größenprobleme sollten nicht entstehen – bei 30GB-Datenbank ca. 350MB Katalog)

Wählen Sie nun alle Datenbanken oder eben die spezifische Problem-Datenbank.
Vergessen Sie jedoch nicht, dass der Exchange umgehend mit dem Durchforsten der Datenbank beginnt – also notfalls auf die Nacht ausweichen.

ResetSearchIndex.ps1 -force <Mailbox-Datenbank>

oder hier alle Datenbanken:

ResetSearchIndex.ps1 -force -all

Eigentlich war es das auch schon, Gründe für Probleme bei der Indexierung (egal ob PDF-Filter oder nicht vorhanden sind) wären:

Eine Datenbank würde Migriert und es gab einen Index-Cut…sollte nicht passieren, stellt man aber meist dadurch fest, dass Objekte bis zu bzw. ab einem gewissen Datum auffindbar sind.

Oder die Datenbank wurde verschoben aber die Catalog-Ordner wird vom Exchange nicht mehr gefunden.

In beiden Fällen lohnt die Neuerstellung per Skript.

4. Überprüfen des Status der Indexierung

Nun wäre es noch interessant zu wissen, wann den der Index-Dienst endlich fertig ist:

Get-MailboxDatabaseCopyStatus | Format-Table Identity,ActiveDatabaseCopy,ContentIndexState -Auto


So viel Englisch sollte jeder verstehen: „crawling“ = am indizieren, „healthy“ = indiziert.


Bis dann Jungs.