Error al ejecutar StartDagServerMaintenance.ps1 script en Exchange Server 2010
Número de KB original: 3058960
Síntomas
Intente configurar un servidor que se encuentra en un grupo de disponibilidad de base de datos (DAG) en modo de mantenimiento mediante la ejecución del StartDagServerMaintenance.ps1
script. Sin embargo, se produce un error en el script y recibe el siguiente mensaje de error:
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
Además, al ejecutar el Get-MailboxDatabaseCopyStatus
cmdlet en la base de datos, la base de datos no notifica el estado DisconnectedAndHealthy según lo previsto.
Solución alternativa
Para solucionar este problema, use los métodos siguientes para conmutar por error manualmente las bases de datos de este servidor.
Poner el servidor en modo de mantenimiento
Compruebe que al menos otra copia no retrasada de cada base de datos replicada esté en buen estado. Para ello, ejecute el siguiente comando del Shell de administración de Exchange (EMS):
Get-MailboxDatabase -Server 'MaintenanceServerName' | Get-MailboxDatabaseCopyStatus
Mueva todas las bases de datos de este servidor ejecutando el siguiente comando EMS:
Move-ActiveMailboxDatabase -Server 'MaintenanceServerName'
Nota:
No se especifica ningún servidor de destino, lo que significa que la siguiente mejor copia se seleccionará automáticamente para la activación.
Mueva los recursos principales del clúster a otro nodo del DAG. Para ello, ejecute el siguiente comando en el símbolo del sistema:
cluster.exe DAGFQDN group "ClusterGroup" /moveto: 'MaintenanceServerName'
Suspenda todas las copias en el servidor ejecutando el siguiente comando EMS:
Get-MailboxDatabaseCopyStatus -Server 'MaintenanceServerName' | Suspend-MailboxDatabaseCopy -ActivationOnly:$true
Para pausar el nodo en el clúster, ejecute la siguiente línea de comandos:
cluster.exe DAGFQDN node '**MaintenanceServerName**' /pause
Evite que las bases de datos intenten conmutar por error a este nodo mediante la ejecución del siguiente comando EMS:
Set-MailboxServer -Identity 'MaintenanceServerName' -DatabaseCopyAutoActivationPolicy:BLOCKED
Quitar el servidor del modo de mantenimiento
Para volver a poner el servidor en producción, siga estos pasos:
Reanude el nodo en el clúster. Para ello, ejecute la siguiente línea de comandos:
cluster.exe DAGFQDN node 'MaintenanceServerName' /resume
Quite el bloque de activación automática en este servidor mediante la ejecución del siguiente comando EMS:
Set-MailboxServer -Identity 'MaintenanceServerName' -DatabaseCopyAutoActivationPolicy: Unrestricted
Reanude la replicación de la base de datos de buzones en el servidor mediante la ejecución del siguiente comando EMS:
Get-MailboxDatabaseCopyStatus -Server 'MaintenanceServerName' | Resume-MailboxDatabaseCopy
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".