null

Что мешает удалению "пустой" базы данных почтовых ящиков в Exchange? часть 1

Или, что в себе может таить "опустевшая" база данных почтовых ящиков.

 

Данная заметка имеет постфикс - часть 1, и эту, первую часть заметки, я пишу

  • для молодых коллег, для пояснения особенностей хранения служебной информации в объектах почтовых ящиков специального типа в MS Exchange,
  • и в тоже время как "подводку" к неочевидному наполнению "пустой" базы данных, которому будет посвящена вторая часть "Что мешает удалению "пустой" базы данных почтовых ящиков в Exchange?" 

 

Когда мы можем столкнуться с данным вопросом?

База данных может содержать НИ ОДНОГО ПОЧТОВОГО ЯЩИКА пользователей

Get-Mailbox -Database "MDB 11" | Measure-object |select Count
Count: 0

Удаление почтовой базы данных (Mailbox Database) завершается неуспешно с большим Warning'ом:

This mailbox database contains one or more mailboxes, mailbox plans, archive mailboxes, public folder mailboxes or arbitration mailboxes, Audit mailboxes. To get a list of all mailboxes in this database, run the command Get-Mailbox -Database <Database ID>. To get a list of all mailbox plans in this database, run the command Get-MailboxPlan. To get a list of archive mailboxes in this database, run the command Get-Mailbox -Database <Database ID> -Archive. To get a list of all public folder mailboxes in this database, run the command Get-Mailbox -Database <Database ID> -PublicFolder. To get a list of all arbitration mailboxes in this database, run the command Get-Mailbox -Database <Database ID> -Arbitration. To get a list of all Audit mailboxes in this database, run the command Get-Mailbox -Database <Database ID> -AuditLog. To disable a non-arbitration mailbox so that you can delete the mailbox database, run the command Disable-Mailbox <Mailbox ID>. To disable an archive mailbox so you can delete the mailbox database, run the command Disable-Mailbox <Mailbox ID> -Archive. To disable a public folder mailbox so that you can delete the mailbox database, run the command Disable-Mailbox <Mailbox ID> -PublicFolder. To disable a Audit mailbox so that you can delete the mailbox database, run the command Get-Mailbox -AuditLog | Disable-Mailbox.

Иронично отмечу, что если Вы задаётесь вопросом 

"зачем удалять базу данных почтовых ящиков в живом Exchange?"

то дочитайте данную заметку до конца, прочитайте мои иные заметки по Exchange Server( ссылки в конце приложу) и подумайте над тем, чтобы развить полученные знания путём прохождения обучения или обратиться к нам для помощи в сопровождении Вашего MS Exchange Server wink

 

Итак, пользователей нет, но предупреждение указывает на ряд каких-то типов почтовых ящиков

 

Exchange хранит часть объектов почтового сервиса в .... структуре почтовых ящиков.

Но есть но, это специальные почтовые ящики. И так как при ежедневных задачах операции происходят преимущественно с почтовыми ящиками пользователей (Это тип такой, если что : почтовый ящик пользователей, он же USER MAILBOX), то для того, чтобы не травмировать тонкую психику несведующего и/или глубоко не знающего ИТ-специалиста покоцать специализированные ящики с общей или служебной информацией, индусы ребята из Microsoft сделали защиту от дурака вывод по умолчанию только пользовательских почтовых ящиков.

Поэтому, написав Get-mailbox мы получаем список пользовательских почтовых ящиков. 

Что за иные типы почтовых ящиков могут быть

  1. PublicFolder - общедоступные папки
  2. AuditLog -  ящик аудита - хранит информацию по аудиту использования (настраиваем и включаем в Exchange)
  3. Monitoring - почтовые ящики работоспособности для моделирования действий, связанных с сервером, в целях самотестирования (фича Managed Availability).
  4. Archive - архивный почтовый ящик
  5. Arbitration - системные почтовые ящики, которые используются для хранения различных типов системных данных.
  6. MailboxPlan - шаблон, который автоматически настраивает свойства почтового ящика в Exchange Online (гибридное развертывание 365)

Как посмотреть эти почтовые ящики

Во многом мы видим подсказку в Warning: нужно указатья явно специфику типа почтового ящика в командлете

[PS] C:\Windows\system32>Get-Mailbox -Database "MDB 11" -AuditLog
[PS] C:\Windows\system32>Get-Mailbox -Database "MDB 11" -Monitoring
[PS] C:\Windows\system32>Get-Mailbox -Database "MDB 11" -Arbitration
[PS] C:\Windows\system32>Get-Mailbox -Database "MDB 11" -PublicFolder
[PS] C:\Windows\system32>Get-Mailbox -Database "MDB 11" -Archive

p.s. Работа с  Get-MailboxPlan возможна если у Вас гибридное развертывание Exchange (локальная + облако у Microsoft 365).

Как все таки удалить базу данных с этими ящиками

Как и с пользовательскими - мы

  • либо перемещаем
    Get-Mailbox -Database "Es1 MDB ORD1" -PublicFolder| New-MoveRequest -TargetDatabase "MDB 14"

     
  • либо отключаем - Disable
    Disable-MailboxGet-Mailbox -Database "MDB 11" -Monitoring | Disable-Mailbox -Confirm:$false

     
  • либо удаляем
    Get-Mailbox -Database "Es1 MDB ORD1" -Archive| Remove-mailbox -Confirm:$false

*Примеры приведены для примера, не нужно слепо делать действия для приведенных типов почтовых ящиков. Тут решать Вам :-)

 

Но Если этого не достаточно, и при пустом выводе не удалить базу данных?

В моём случае я перенес AuditLog почтовые ящики в другую базу 

Get-Mailbox -Database "Es1 MDB ORD1" -PublicFolder| New-MoveRequest -TargetDatabase "MDB 14"

Деактевировал Monitoring mailbox'ы

get-mailbox -Monitoring -Database "MDB 11"

Name                      Alias                ServerName       ProhibitSendQuota
----                      -----                ----------       -----------------
HealthMailbox602306e1d... HealthMailbox6023... efs1              Unlimited
HealthMailbox5f5d9a566... HealthMailbox5f5d... efs1              Unlimited
HealthMailbox9c94c4f6f... HealthMailbox9c94... efs1              Unlimited
HealthMailbox79dd6cff9... HealthMailbox79dd... efs1              Unlimited
HealthMailbox037697f82... HealthMailbox0376... efs1              Unlimited
HealthMailbox0aceb34c9... HealthMailbox0ace... efs1              Unlimited
HealthMailbox81265dc24... HealthMailbox8126... efs1              Unlimited
HealthMailbox378aa6a3d... HealthMailbox378a... efs2              Unlimited
HealthMailboxae28dea7b... HealthMailboxae28... efs1              Unlimited
HealthMailboxc211e0c49... HealthMailboxc211... efs2              Unlimited
get-mailbox -Monitoring -Database "MDB 11" |Disable-Mailbox -Confirm:$false

И из приведенного в предупреждении списка почтовая база данных не содержала НИЧЕГО, но удалить её не позволял Exchange ссылаясь на то, что всё таки она не пуста.

Что может ещё быть в ней и не показываться нам наружу?

Об этом в части 2.


Что ещё можно почитать?

Ещё мои статьи по диагностике, оптимизации и решению проблем с Exchange Server

 

Мы имеем широкий опыт по настройкам, обслуживанию, поддержке, оптимизации ИТ инфраструктуры .

В компетенциях нашей команды ТЮН-ИТ технологии Microsoft, Oracle, vmWare, Huawei, Citrix, Cisco, Astra Linux и много open source продуктов (Xen & KVM based гипервизоры, Nix системы, сетевые технологии). 

Обращайтесь к нам как со сложными вопросами ИТ: мы открыты как для больших, так и малых проектов.