В поиске в Outlook вбиваем что-нибудь — выдаёт результаты только старше определенной даты (в моём случае не искал письма с 24 февраля по 15 марта), хотя письма есть. Есть варианты локальные с изменением настроек Outlook, но т.к. проблема у всех пользователей, значит дело в Exchange. У меня Exchange 2016.
Смотрим состояние индекса содержимого:
Get-MailboxDatabaseCopyStatus -Identity *
Решение проблемы с индексом: FailedAndSuspended
- Остановите службу «Служба поиска Microsoft Exchange» / «Microsoft Exchange Search service»
- Остановите службу «Microsoft Exchange Search Host Controller»
- Через консоль ЕСР отключаем базу
- Удалите папку внутри директории с базой [guid.single]. Guid — имеет уникальный ID вашей базы данных (узнать его можно запустив Get-MailboxDatabase database-name | Select Guid. Например, папку которая вам нужна может называться примерно так — d:\mailbase\DB2\0E165BB5-7B3D-418F-83F2-9CE2F1AF534F12.1.Single
- Запустите службу «Служба поиска Microsoft Exchange» / «Microsoft Exchange Search service»
- Запустите службу «Microsoft Exchange Search Host Controller»
- Подключите базу данных
Статус индексирования «Сrawling»
Смотрим статус ContentIndexState и видим «crawling», как в песне Linkin Park:
Get-MailboxDatabaseCopyStatus * | where {$_.ContentIndexState -eq "crawling"}
Останавливаем и запускаем службу: “Microsoft Exchange Search Indexer” Service.
Затем вы можете оставить Exchange синхронизировать индекс поиска содержимого или запустить процесс вручную, выполнив приведенный ниже командлет (вам необходимо использовать пассивную копию):
Update-MailboxDatabaseCopy "MBX\ExchangePassiveServer" -CatalogOnly
Но я оставил индексирование на ночь. Статус ContentIndexState изменится на Healthy.