Сбои репликации Exchange DAG (Event ID 4113): устранение проблем копий БД
Симптомы сбоев репликации Exchange DAG
Копии почтовых баз данных в группе доступности (DAG) переходят в статус FailedAndSuspended, Disconnected или Corrupt. Длина очереди репликации (Copy Queue Length) и очереди применения логов (Replay Queue Length) непрерывно растет. В журнале фиксируется Event ID 4113: Database redundancy is compromised или Event ID 2153.
| Симптом | Состояние копии | Причина |
|---|---|---|
| FailedAndSuspended | Репликация остановлена | Повреждение файла лога транзакций (Log gap) или нехватка места на диске |
| Высокий Copy Queue Length | Отставание реплики | Сетевые задержки или сбои протокола Exchange Replication Service (порт TCP 64327) |
| Quorum / Cluster Down | Кластер DAG не в сети | Потеря связи со свидетелем File Share Witness (FSW) |
Пошаговое восстановление репликации базы данных DAG
- Проверьте текущее состояние копий баз данных через Exchange Management Shell:
Get-MailboxDatabaseCopyStatus * | Format-Table -AutoSize Name, Status, CopyQueueLength, ReplayQueueLength, LastInspectedLogTime - Возобновите приостановленную репликацию (если журнал не поврежден):
Resume-MailboxDatabaseCopy -Identity "DB01\EXCH02" - Выполните повторное начальное заполнение (Reseed) при повреждении базы: если в цепочке логов образовался пропуск, выполните повторную синхронизацию с рабочей активной копии:
Update-MailboxDatabaseCopy -Identity "DB01\EXCH02" -DeleteExistingFiles -SourceServer "EXCH01" -SafeDeleteExistingFiles - Проверьте работоспособность кластерной службы и порта репликации:
Test-NetConnection -ComputerName exch02.company.local -Port 64327; Test-ReplicationHealth
Внимание: Перед выполнением команды Update-MailboxDatabaseCopy с ключом -DeleteExistingFiles убедитесь, что активная копия базы на сервере-источнике полностью исправна и находится в состоянии Mounted.
Частые вопросы (FAQ)
Какой сетевой порт использует служба репликации Exchange DAG?
Служба репликации Microsoft Exchange Replication Service (MSExchangeRepl) по умолчанию использует TCP-порт 64327.
Что такое Log Gap в DAG?
Это пропуск в последовательности номеров файлов журналов транзакций (.log), из-за которого сервер-пассив не может продолжить накат логов.
Как проверить здоровье всего DAG одной командой?
Используйте командлет Test-ReplicationHealth в Exchange Management Shell.
Что означает статус базы Healthy?
Это означает, что пассивная копия находится в актуальном состоянии, все логи скопированы и применены успешно.