元の KB 番号: 3058960
症状
StartDagServerMaintenance.ps1
スクリプトを実行して、データベース可用性グループ (DAG) 内のサーバーをメンテナンス モードに構成しようとします。 ただし、スクリプトは失敗し、次のエラー メッセージが表示されます。
VERBOSE: [Time UTC] Move-DagActiveCopy: Entering: `$MailboxServer=ExServer, `$Database=
VERBOSE: [Time UTC] Move-DagActiveCopy: Moving all replicated active databases off server ExServer
VERBOSE: [Time UTC] Move-DagActiveCopy: moving database 'DBName' off server 'ExServer'
VERBOSE: [Time UTC] Move-DagMasterCopy: Entering: `$db=DBName, `$srcServer=ExServer, `$preferredTarget=
VERBOSE: [Time UTC] Test-DagTargetCopy: Testing move criteria for DatabaseName\ExchangeServer, with `$Lossless=True and
`$CICheck=False …
VERBOSE: [Time UTC] Test-DagTargetCopy: Name='DatabaseName\ExchangeServer', Status='DisconnectedAndHealthy',
CIStatus='Healthy', CopyQueueLength=0, ReplayQueueLength=0
VERBOSE: [Time UTC] Test-DagTargetCopy: Leaving (returning 'False')
VERBOSE: [Time UTC] Test-DagTargetCopy: Testing move criteria for DBName\DR-ExServer, with `$Lossless=True
and `$CICheck=False …
VERBOSE: [Time UTC] Test-DagTargetCopy: Name='DBName\DR-ExServer', Status='DisconnectedAndHealthy',
CIStatus='Healthy', CopyQueueLength=0, ReplayQueueLength=0
VERBOSE: [Time UTC] Test-DagTargetCopy: Leaving (returning 'False')
VERBOSE: [Time UTC] Move-DagMasterCopy: 0 copies out of 3 for database DBName will be attempted for move.
Log-Error : [Time UTC] Move-DagMasterCopy: Database 'DBName' *FAILED* to move! Now attempting to perform rollback to prevent a DB outage…
At D:\Program Files\Microsoft\Exchange\V14\scripts\DagCommonLibrary.ps1:483 char:14
+ Log-Error <<<< ($DagCommonLibrary_LocalizedStrings.res_0064 –f $db,"Move-DagMasterCopy")
+ CategoryInfo : NotSpecified: ( : ) [Write-Error], WriteErrorException + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Log-Error
さらに、データベースで Get-MailboxDatabaseCopyStatus
コマンドレットを実行しても、データベースは DisconnectedAndHealthy 状態を想定どおりに報告しません。
回避策
この問題を回避するには、次の方法を使用して、このサーバーからデータベースを手動でフェールオーバーします。
サーバーをメンテナンス モードにする
レプリケートされた各データベースの少なくとも 1 つの他の遅延のないコピーが正常であることを確認します。 これを行うには、次の Exchange 管理シェル (EMS) コマンドを実行します。
Get-MailboxDatabase -Server 'MaintenanceServerName' | Get-MailboxDatabaseCopyStatus
次の EMS コマンドを実行して、このサーバーからすべてのデータベースを移動します。
Move-ActiveMailboxDatabase -Server 'MaintenanceServerName'
ノート
ターゲット サーバーが指定されていないため、次に最適なコピーがアクティブ化のために自動的に選択されることを意味します。
クラスター コア リソースを DAG 内の別のノードに移動します。 これを行うには、コマンド プロンプトで次のコマンドを実行します。
cluster.exe DAGFQDN group "ClusterGroup" /moveto: 'MaintenanceServerName'
次の EMS コマンドを実行して、サーバー上のすべてのコピーを中断します。
Get-MailboxDatabaseCopyStatus -Server 'MaintenanceServerName' | Suspend-MailboxDatabaseCopy -ActivationOnly:$true
次のコマンド ラインを実行して、クラスター内のノードを一時停止します。
cluster.exe DAGFQDN node '**MaintenanceServerName**' /pause
次の EMS コマンドを実行して、データベースがこのノードへのフェールオーバーを試みないようにします。
Set-MailboxServer -Identity 'MaintenanceServerName' -DatabaseCopyAutoActivationPolicy:BLOCKED
メンテナンス モードからサーバーを削除する
サーバーを運用環境に戻すには、次の手順に従います。
クラスター内のノードを再開します。 これを行うには、次のコマンド ラインを実行します。
cluster.exe DAGFQDN node 'MaintenanceServerName' /resume
次の EMS コマンドを実行して、このサーバーでの自動アクティブ化のブロックを削除します。
Set-MailboxServer -Identity 'MaintenanceServerName' -DatabaseCopyAutoActivationPolicy: Unrestricted
次の EMS コマンドを実行して、サーバー上のメールボックス データベースレプリケーションを再開します。
Get-MailboxDatabaseCopyStatus -Server 'MaintenanceServerName' | Resume-MailboxDatabaseCopy
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。