Я потратил несколько часов на то, чтобы выяснить, как удалять сообщения из почтового ящика в определенном диапазоне дат в Exchange 2010. Я все же не смог найти правильный сценарий PowerShell для этого.
Поэтому я сбросил все сообщения с помощью командлета Get-Mailbox | Search-Mailbox -DeleteContent
.
Хотя 5 ГБ следовало удалить (статистика показывает, что необходимые почтовые ящики теперь пусты), это не освободило место на жестком диске, содержащем мою базу данных Exchange.
Есть ли какие-нибудь SQL-подобные вещи, которые мне нужно сделать, чтобы «зафиксировать» транзакцию удаления?
Вы ищете автономная дефрагментация. Команда eseutil /d
даст вам то, что вам нужно. См. Связанную базу знаний Microsoft.
пожалуйста, обратите внимание что при этом вы хотите поместить свою временную базу данных в другой раздел, имеющий такой же объем свободного пространства, как и ваша текущая база данных обмена.
Чтобы ответить на ваш вопрос, Nixphoe может дать правильный ответ с помощью автономной дефрагментации. Однако в качестве предупреждения все почтовые ящики в базе данных, которую вы дефрагментируете, будут отключены на время дефрагментации (что может быть непристойным).
Однако, если вы серьезно подумываете о выполнении крупной операции, такой как автономная дефрагментация, для освобождения паршивых 5 ГБ дискового пространства, вам необходимо в срочном порядке обновить хранилище (при заполнении дисков с Exchange случаются неприятности).
Если вы действительно намерены сделать это, лучшей и более простой альтернативой является создание новой базы данных почтовых ящиков и перемещение ваших почтовых ящиков из старой базы данных в эту новую. Это также имеет очень привлекательное преимущество, заключающееся в том, что в автономном режиме отключаются только те почтовые ящики, которые в настоящее время находятся в пути, и означает значительно меньшее время простоя для ваших пользователей, чем автономная дефрагментация. Однако при использовании этого метода необходимо достаточно места для хранения существующей базы данных, а также новой, пока вы перемещаете почтовые ящики между ними.
Причина, по которой ваш файл .edb (фактическая база данных Exchange) не стал меньше, - это функция производительности Exchange, и если у вас нет действительно веская причина, я бы никогда не рекомендовал вам выполнять автономную дефрагментацию производственной базы данных. С уважением, если вы задаете этот вопрос, это означает, что вы не понимаете, почему ядро базы данных ESE работает таким образом, и поэтому, вероятно, у вас нет веских причин для автономной дефрагментации.