Error al usar el cmdlet Uninstall-CSDatabase

Hola Mundo:

Cualquier proceso de migración va en la recta final cuando te pones a quitar por completo la antigua
versión.

En el caso de Lync, en una migración de la versión 2010 a la versión 2013, ya los últimos pasos son cuando migras el Central Management Store y desinstalas la base de datos antigua.
Hay un comando que sirve justamente para este propósito. El cmdlet (de Powershell) es Uninstall-CsDatabase.

El cmdlet tiene un montón de parámetros que no los tocaremos ahora. Siempre Technet lo explica mejor que yo: http://technet.microsoft.com/en-us/library/gg412922.aspx

Lo normal, es que siempre que se ejecute la herramienta, termine con un mensaje parecido a este para indicar que todo terminó de forma correcta:

Pero hay veces que termina así:

—————
Exit code: ERROR_ALLOW_DATABASE_ACCESS (-22)
—————
Ok. Que no cunda el pánico. Si esto ocurre es porque:

  1. La cuenta que estás usando no es administrador del SQL Server
  2. La cuenta que estás usando no es administrador local de la máquina de Lync
  3. La cuenta que estás usando no es una cuenta de dominio.
Cumpliendo los 3 puntos, la cosa funcionará.
Chau

Error al mover usuarios de un pool antiguo a un pool nuevo en Lync 2013

Hola Mundo:

Hoy me encontraba moviendo usuarios desde un pool  de Lync 2010 hacia un pool de Lync 2013, en un proyecto de migración hacia la última versión de Lync.

El proceso iba lento, pero suave, hasta que un error salvaje apareció:

Move-CsUser : Move in progress. User «sip:xxxx@yyy.xx» is being moved from «antiguo.yyy.xx» to «antiguo.yyy.xx». At line:1 char:1 + Move-CsUser -Identity «xxxx@yyy.xx» -Target «nuevo.yyy.xx» + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (CN=XXXX,DC=yyy,DC=xx:OCSADUser) [Move-CsUser], MoveUserException + FullyQualifiedErrorId : MoveError,Microsoft.Rtc.Management.AD.Cmdlets.Mo veOcsUserCmdlet

El error hace referencia a que la cuenta ya se estaba moviendo desde un pool antiguo hacia el mismo pool. Extraña cosa.

Esto es causado porque el atributo de usuario  msRTCSIP-TargetUserPolicies tiene un valor asignado. Para corregir esto:

  1. Abrir ADSI Edit
  2. Buscar al usuario
  3. Limpiar el atributo

Al encontrar el atributo, debieran  verlo así:

 Ese atributo se debe limpiar. Dejar en blanco



Luego de eso, se podrá mover el usuario sin problemas.