Instalación de ADMT 3.2 incompleta, error de consola MMC "no se puede abrir la base de datos 'ADMT' solicitada por el inicio de sesión"

En este artículo se proporciona ayuda para un error (no se puede abrir la base de datos "ADMT" solicitada por el inicio de sesión. Error de inicio de sesión) que se produce al ejecutar la consola de la Herramienta de migración de Active Directory (ADMT).

Versión original del producto:   Windows Server 2012 R2
Número KB original:   2266373

Síntomas

Al instalar ADMT 3.2 en un controlador de dominio de Windows Server 2008 R2 y usar SQL Express 2008 con SP1 y la actualización acumulativa 4 de SQL 2008, la instalación se completa sin errores. Sin embargo, el cuadro de diálogo "Asistente para instalación de la herramienta de migración de Active Directory" está en blanco cuando finaliza la instalación.

Al intentar ejecutar la consola de ADMT, recibes un error:

Herramienta de migración de Active Directory
No se puede comprobar si hay acciones con errores.:D BManager.IManageDB.1: no se puede abrir la base de datos "ADMT" solicitada por el inicio de sesión. Error en el inicio de sesión.

A continuación, la consola MMC muestra:

MMC no pudo crear el complemento.
MMC no pudo crear el complemento. Es posible que el complemento no se haya instalado correctamente.
Nombre: Herramienta de migración de Active Directory
CLSID: {E1975D70-3F8E-11D3-99EE-00C04F39BD92}

Causa

Hay un defecto de código en la forma en que ADMT interopera con SQL Express 2008 SP1 en controladores de dominio, lo que provoca que no se cree el grupo "SQLServerMSSQLUser$ComputerName$InstanceName". ADMT requiere este grupo para configurar permisos específicos durante la instalación de ADMT y permite crear la base de datos de ADMT en la SQL usuario. ADMT espera que el grupo esté presente, lo que da lugar al cuadro de diálogo en blanco y a una instalación incompleta.

Solución alternativa 1

El procedimiento estándar es instalar ADMT en un equipo miembro en el dominio de destino. Instale SQL Express 2008 SP1 en un servidor miembro de Windows 2008 R2 en el dominio de destino y, a continuación, instale ADMT 3.2 en ese mismo servidor miembro.

Solución alternativa 2

Si necesita instalar ADMT 3.2 en un controlador de dominio para usar las migraciones de usuarios de línea de comandos o de script con el historial SID, instale SQL 2008 SP1 (edición que no es Express) en un servidor miembro de Windows Server 2008 R2 en el dominio de destino y seleccione esa instancia remota al instalar ADMT 3.2 en el controlador de dominio. Como alternativa, puede instalar SQL Express 2005 SP3 en el controlador de dominio.

Solución alternativa 3

Si necesita instalar ADMT 3.2 y SQL Express 2008 SP1 en el mismo controlador de dominio, siga estos pasos en el controlador de dominio del dominio de destino:

  1. Instale el paquete de actualización acumulativa 4 para SQL Server 2008 en el controlador de dominio.

  2. Instale SQL Express 2008 SP1 en el controlador de dominio. Tenga en cuenta SQL nombre de instancia creado durante la instalación (el valor predeterminado es SQLEXPRESS).

  3. Cree un grupo local de dominio con el formato "SQLServerMSSQLUser$ <DCComputerName> $ <InstanceName> ". Por ejemplo, si el controlador de dominio se denomina "DC1" y la instancia de SQL era "SQLEXPRESS", ejecutaría el siguiente comando en un símbolo del sistema con privilegios elevados:

    NET LOCALGROUP SQLServerMSSQLUser$DC1$SQLEXPRESS /ADD
    
  4. Recupere el SID SQL servicio con el SC.EXE con el nombre de la SQL de servicio. Por ejemplo, si la instancia de SQL era "SQLEXPRESS", ejecutaría el siguiente comando en un símbolo del sistema con privilegios elevados y tendría en cuenta el valor SID de SERVICIO devuelto:

    SC SHOWSID MSSQL$SQLEXPRESS
    
  5. En el directorio de Windows, crea la subcarpeta "ADMT" y una subcarpeta debajo de "Data". Por ejemplo, ejecutaría el siguiente comando en un símbolo del sistema con privilegios elevados:

    MD %SystemRoot%\ADMT\Data
    
  6. Con el SID recuperado en el paso 4, establece los permisos DE CONTROL TOTAL en la carpeta %SystemRoot%\ADMT\Data. Por ejemplo, si el SID devuelto en el paso 4 era "S-1-5-80-3880006512-4290199581-3569869737-363123133", ejecutaría el siguiente comando en un símbolo del sistema con privilegios elevados:

    ICACLS %systemroot%\ADMT\Data /grant *S-1-5-80-3880006512-4290199581-3569869737-363123133:F
    
  7. Instale ADMT 3.2 en el controlador de dominio mientras selecciona la instancia SQL Express 2008.