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 en el inicio de sesión) que se produce al ejecutar la consola de Active Directory Migration Tool (ADMT).

Se aplica a: Windows Server 2012 R2
Número de 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 SQL 2008 Cumulative Update 4, 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, recibe un error:

Herramienta de migración de Active Directory
No se puede comprobar si hay errores en actions.: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 lo siguiente:

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 necesita este grupo para configurar permisos específicos durante la instalación de ADMT y permite crear la base de datos de ADMT en la instancia de SQL. ADMT espera que el grupo esté presente, lo que conduce al cuadro de diálogo en blanco y a una instalación incompleta.

Solución alternativa 1

El procedimiento estándar consiste en instalar ADMT en un equipo miembro del 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 tiene un requisito para instalar ADMT 3.2 en un controlador de dominio para usar migraciones de usuario de línea de comandos o scripts con el historial de SID, instale SQL 2008 SP1 (edición no 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 tiene un requisito para 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 el nombre de instancia de SQL 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 del servicio SQL mediante el comando SC.EXE con el nombre de la instancia del servicio SQL. Por ejemplo, si la instancia de SQL fuera "SQLEXPRESS", ejecutaría el siguiente comando en un símbolo del sistema con privilegios elevados y observaría el valor de SID de SERVICIO devuelto:

    SC SHOWSID MSSQL$SQLEXPRESS
    
  5. En el directorio de Windows, cree la subcarpeta "ADMT" y una subcarpeta debajo de la denominada "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, establezca permisos DE CONTROL TOTAL en la carpeta %SystemRoot%\ADMT\Data. Por ejemplo, si el SID devuelto en el paso 4 fuera "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 al seleccionar la instancia local de SQL Express 2008.