Очистка и удаление базы данных
Удалить базу данных Exchange можно при помощи команды:
Remove-MailboxDatabase -Identity "Database1"
Однако, без дополнительных действий мы, скорее всего, получим ошибку о том, что база данных не пуста. Ниже будет чек-лист того, что потребуется проверить и перенести (либо отключить перед удалением).
1. Для начала просмотрим наличие обычных ящиков Exchange:
Get-Mailbox -Database "Database1" -ResultSize Unlimited
2. Если там есть ящики, мы должны их перенести в другую базу данных:
Get-Mailbox -Database "Database1" -ResultSize Unlimited | New-MoveRequest -TargetDatabase "Database1"
Мониторить статус выполнения запросов на перемещение ящиков можно так:
Get-MoveRequestStatistics -MoveRequestQueue "Database2"
3. Теперь проверим наличие архивных ящиков в удаляемой БД:
Get-Mailbox -ResultSize Unlimited | Where {$_.ArchiveDatabase -like "Database1"}
4. Переместим архивные ящики в другую базу данных:
Get-Mailbox -ResultSize Unlimited | Where {$_.ArchiveDatabase -like "Database1"} | New-MoveRequest -ArchiveTargetDatabase "Database2"
5. Проверим, есть ли публичные папки в нашей БД:
Get-Mailbox -Database "Database1" -PublicFolder
6. Перемещаем, если есть:
Get-Mailbox -Database "Database1" -PublicFolder | New-MoveRequest -TargetDatabase "Database2"
7. Проверяем наличие ящиков с типом arbitration:
Get-Mailbox -Database "Database1" -Arbitration
8. Отправляем их в другую БД:
Get-Mailbox -Database "Database1" -Arbitration | New-MoveRequest -TargetDatabase "Database2"
9. Ищем ящики аудита:
Get-Mailbox -Database "Database1" -AuditLog
10. Перемещаем:
Get-Mailbox -Database "Database1" -AuditLog | New-MoveRequest -TargetDatabase "Database2"
11. Проверяем ящики мониторинга:
Get-Mailbox -Database "Database1" -Monitoring | Format-Table Name, DisplayName, Database, Servername
12. Если они есть в базе - их не рекомендуется куда-либо перемещать, а рекомендуется просто отключить. Делаем это:
Get-Mailbox -Database "Database1" -Monitoring | Disable-Mailbox -Confirm:$false