Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 2
Регистрация: 29.01.2019
Сообщений: 60

Не удается проиндексировать все ящики в Exchange 2019

22.09.2025, 13:11. Показов 1611. Ответов 9

Студворк — интернет-сервис помощи студентам
Всем привет, хотел тут проконсультироваться, если позволите. Есть Exchange 2019, на нем 4 базы, около сотни ящиков. Когда-то давно была попытка неудачного обновления системы, в итоге ничего не пострадало, но не запустилась служба индексации. Заметили проблему через неделю примерно, потом проверили ящики:

PowerShell
1
Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | ? {$_.BigfunnelNotIndexedCount -ge "1"} | ft DisplayName,BigfunnelNotIndexedCount
Почти по всем ящикам не хватало от нескольких десятков до нескольких сотен индексированных сообщений. Тогда мы придумали просто перемещать ящики между базами, чтобы ящики заново проиндексировались. Это помогло, но некоторые ящики (около 10) так и остались с несколькими сообщениями, которые невозможно найти поиском (на скрине). Почему так происходит? Чем эти ящики могут отличаться от остальных? Ну и если выполнить Get-MailboxStatistics user1 | fl *NotIndex*, тоже будет видно, что не все элементы проиндексированы.
Миниатюры
Не удается проиндексировать все ящики в Exchange 2019   Не удается проиндексировать все ящики в Exchange 2019  
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.09.2025, 13:11
Ответы с готовыми решениями:

Вход в панель управления MS Exchange Server 2019 на Windows Server 2019
Здравствуйте, ребята! У меня возникла следующая проблема. Я только разбираюсь в работе MS...

Создать почтовые ящики Exchange тем у кого их пока нет
Доброго дня уважаемые Задача состоит из двух частей, выделить среди пользователей АД тех у кого...

Старые ящики Exchange
Добрый день! Есть скрипт, который получает статистику последнего обращения к ящику Exchange 2010...

9
 Аватар для andrey_f
882 / 535 / 228
Регистрация: 21.02.2011
Сообщений: 5,706
01.10.2025, 09:58
Лучший ответ Сообщение было отмечено shupike как решение

Решение

Вообще поисковик выдает четыре возможные проблемы:
Code
1
2
3
4
5
6
7
Поврежденные элементы (Corrupt Items) — Это самая распространенная причина. Конкретное письмо, контакт, событие календаря или задача в ящике имеет битую структуру или содержит данные, которые движок индексации (Search Foundation, он же "Bigfunnel" в Exchange 2019) не может обработать. При перемещении почтового ящика копируются все элементы, включая поврежденные. Новый движок индексации на целевой базе снова натыкается на этот же элемент и не может его проиндексировать.
 
Типы элементов, не поддерживаемые индексацией. Некоторые вложения или специфические типы сообщений (например, с определенными типами MIME) могут не индексироваться по задумке.
 
Проблемы с разрешениями. Очень редкий случай, но если у системного процесса нет прав на чтение конкретного элемента, он будет пропущен.
 
Ошибки в самой базе данных. Хотя вы говорите, что система работает, неудачное обновление могло оставить след в виде незначительных повреждений на уровне страниц ESE базы, которые затрагивают лишь несколько разбросанных элементов.
Но мне кажется, что в вашем случае причина - это "битые" элементы.

Можно попробовать найти ящик, где больше всего таких элементов и попробовать его вручную проиндексировать.
Вроде так:
PowerShell
1
Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | Where-Object {$_.BigfunnelNotIndexedCount -gt "0"} | Sort-Object BigfunnelNotIndexedCount -Descending | Select-Object DisplayName, BigfunnelNotIndexedCount
PowerShell
1
2
# Запускаем для конкретного пользователя
Get-Mailbox "user1" | New-MailboxSearch -Name "ReindexUser1" -TargetMailbox "user1" -EstimateOnly:$false -Force -ExcludeDuplicateMessages:$true
Это команда запускает поиск, который инициирует переиндексацию. Она может создать нагрузку.
После выполнения нужно будет удалить этот поиск:
PowerShell
1
Remove-MailboxSearch -Identity "ReindexUser1"
0
1 / 1 / 2
Регистрация: 29.01.2019
Сообщений: 60
01.10.2025, 11:37  [ТС]
Спасибо огромное - попробую аккуратно. Как считаете - стоит ли подстраховаться экспортом проблемных ящиков заранее в PST?
0
 Аватар для andrey_f
882 / 535 / 228
Регистрация: 21.02.2011
Сообщений: 5,706
01.10.2025, 12:05
Цитата Сообщение от shupike Посмотреть сообщение
Как считаете - стоит ли подстраховаться экспортом проблемных ящиков заранее в PST?
В теории, процесс экспорта/импорта часто "исправляет" или отсекает "битые" элементы, которые не может прочитать. Движок экспорта просто пропускает их, в результате вы получаете "очищенную" копию ящика, которая должна проиндексироваться на 100%. Поэтому можно с этого и начать,
PowerShell
1
New-MailboxExportRequest -Mailbox "user1" -FilePath "\\SERVER\Share\user1.pst"
Создайте НОВЫЙ почтовый ящик (или очистите старый, если это допустимо). Цель — начать с абсолютно чистой базы.

Импорт данных из PST обратно в ящик.
PowerShell
1
New-MailboxImportRequest -Mailbox "user1_new" -FilePath "\\SERVER\Share\user1.pst"
0
1 / 1 / 2
Регистрация: 29.01.2019
Сообщений: 60
01.10.2025, 12:52  [ТС]
Цитата Сообщение от andrey_f Посмотреть сообщение
Это команда запускает поиск, который инициирует переиндексацию. Она может создать нагрузку.
Скажите, а как увидеть текущий процент выполнения этой команды?
0
1 / 1 / 2
Регистрация: 29.01.2019
Сообщений: 60
02.10.2025, 12:03  [ТС]
Цитата Сообщение от andrey_f Посмотреть сообщение
Это команда запускает поиск, который инициирует переиндексацию. Она может создать нагрузку.
Вы знаете, здесь с синтаксисом что-то не то. Выдается ошибка, что имя конечного ящика не может совпадать с именем ящика, для которого выполняется запрос. То есть нужно в какой-то другой (пустой) ящик все это загнать в процессе индексирования?
0
 Аватар для andrey_f
882 / 535 / 228
Регистрация: 21.02.2011
Сообщений: 5,706
03.10.2025, 09:55
так попробуйте
PowerShell
1
Get-Mailbox "user1" | New-MailboxSearch -Name "ReindexUser1_$(Get-Date -Format 'yyyyMMdd_HHmmss')" -SourceMailboxes "user1" -EstimateOnly:$false -Force
или вот так
PowerShell
1
New-MailboxSearch -Name "ReindexUser1_$(Get-Date -Format 'yyyyMMdd_HHmmss')" -SourceMailboxes "user1" -EstimateOnly:$false -Force
0
1 / 1 / 2
Регистрация: 29.01.2019
Сообщений: 60
03.10.2025, 16:39  [ТС]
Цитата Сообщение от andrey_f Посмотреть сообщение
или вот так
Пока не выходит - может быть, потому что учетная запись, связанная с этим ящиком, отключена в AD? Я пока пробую на ящике уволившегося сотрудника (но ящик тоже не проиндексирован, так что как раз годится для эксперимента).
Миниатюры
Не удается проиндексировать все ящики в Exchange 2019  
0
1 / 1 / 2
Регистрация: 29.01.2019
Сообщений: 60
12.10.2025, 11:12  [ТС]
Прошу прощения - совсем замотался. В итоге попробовал вот так:

PowerShell
1
New-MailboxSearch -Name "ReindexUser1_$(Get-Date -Format 'yyyyMMdd_HHmmss')" -SourceMailboxes "userbox" -EstimateOnly:$false -Force
В ответ выдало следующее:
Name CreatedBy InPlaceHoldEnabled Status
---- --------- ------------------ ------
ReindexUser1_20251012_110904 DOMAIN\admin False NotStarted

Пробую запустить:
PowerShell
1
Start_MailboxSearch -Identity "ReindexUser1_20251012_110904"
Ругается на то, что нужен TargetMailbox, чтобы скопировать туда проиндексированные сообщения:
"Unable to execute the task. Reason: TargetMailbox is required for copying messages returned by the search."

То есть нельзя провести процедуру прямо внутри ящика? Нужен обязательно какой-то промежуточный ящик?
0
 Аватар для andrey_f
882 / 535 / 228
Регистрация: 21.02.2011
Сообщений: 5,706
13.10.2025, 10:07
Цитата Сообщение от shupike Посмотреть сообщение
То есть нельзя провести процедуру прямо внутри ящика? Нужен обязательно какой-то промежуточный ящик?
для New-MailboxSearch требуется указать TargetMailbox

можно так

PowerShell
1
Get-Mailbox "user1" | Update-MailboxSearch -Identity "user1" -Force
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.10.2025, 10:07
Помогаю со студенческими работами здесь

Миграция в домене с MS Exchange 2010 на MS Exchange 2016
Коллеги, здравствуйте! На этапе подготовки домена к установке MS EXCHANGE 2016 возникает...

Не приходят письма в MS Exchange Server 2019
Добрый день, ребята! У меня возникла следующая проблема. Я установил на Windows Server 2019...

Exchange 2019
Нужно было переустановить консоль Exchange 2019. Удалил. Начинаю заново ставить и выскакивает...

Exchange 2019 disable mailbox script
Доброго времени суток, дамы и господа. Есть у меня интересная задумка которую я хотел бы...

Перенаправление почтового ящика на другой Exchange
Доброго дня. Прошу совета. Есть один Exchange (exc1.dc1). на него на даный момент приходят...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru