Compartir a través de


Solución de problemas de bases de datos reflejadas de Fabric desde Azure SQL Managed Instance

En este artículo se describen los pasos de solución de problemas para la creación de reflejo de Azure SQL Managed Instance.

Cambios en la capacidad o área de trabajo de Fabric

Los cambios en la capacidad o el área de trabajo de Fabric pueden afectar a la creación de reflejo. Para obtener más información, revise los efectos sobre el reflejo de cambios en la capacidad de Fabric.

Solución de problemas de Azure SQL Managed Instance

Causa Resultado Resolución recomendada
Área de trabajo eliminada La creación de reflejo se detiene automáticamente y deshabilita la fuente de cambios en Azure SQL Managed Instance En caso de que el reflejo todavía esté activo en Azure SQL Managed Instance, ejecute el siguiente procedimiento almacenado para cada base de datos afectada en su Azure SQL Managed Instance: exec sp_change_feed_disable_db;.
Errores persistentes La creación de reflejo está deshabilitada para la base de datos afectada Para asegurarse de que los recursos de cómputo no se vean afectados y para proteger su base de datos de origen en Azure SQL Managed Instance, se deshabilitará el reflejo ante errores persistentes. Revise sys.dm_change_feed_errors y resuelva los errores subyacentes antes de volver a habilitar la base de datos para la creación de reflejo.
La opción "Los usuarios pueden acceder a los datos almacenados en OneLake con aplicaciones externas a Fabric" deshabilitadas "Replicador: las tablas no pueden alcanzar el estado de replicación" Habilite la opción Inquilino Los usuarios pueden acceder a los datos almacenados en OneLake con aplicaciones externas a Fabric.

Consultas de T-SQL para solucionar problemas

Si tiene problemas de creación de reflejo, realice las siguientes comprobaciones de nivel de base de datos mediante vistas de administración dinámica (DMV) y procedimientos almacenados para validar la configuración.

  1. Ejecute la consulta siguiente para comprobar si los cambios fluyen correctamente:

    SELECT * FROM sys.dm_change_feed_log_scan_sessions;
    
  2. Si la DMV sys.dm_change_feed_log_scan_sessions no muestra ningún progreso en el procesamiento de cambios incrementales, ejecuta la siguiente consulta T-SQL para comprobar si hay algún problema notificado:

    SELECT * FROM sys.dm_change_feed_errors;
    
  3. Si no se notifica ningún problema, ejecute el siguiente procedimiento almacenado para revisar la configuración actual de la instancia administrada de Azure SQL reflejada. Confirme que se ha habilitado correctamente.

    EXEC sp_help_change_feed;
    

    Las columnas de clave que se van a buscar aquí son table_name y state. Cualquier valor además de 4 indica un posible problema. (Las tablas no deben estar demasiado largas en estados distintos de 4)

  4. Si la replicación sigue sin funcionar, compruebe que el objeto SAMI correcto tiene permisos (consulte Permisos SAMI).

    1. En el portal de Fabric, seleccione "..." Opción de puntos suspensivos en el elemento de base de datos reflejado.
    2. Seleccione la opción Administrar permisos .
    3. Confirme que el nombre de Instancia administrada de Azure SQL se muestra con permisos de lectura y escritura.
    4. Asegúrese de que AppId que aparece coincide con el identificador del SAMI de la instancia administrada de Azure SQL.
  5. Póngase en contacto con soporte técnico si se requiere una solución de problemas.

Identidad administrada

La identidad administrada asignada por el sistema (SAMI) de la instancia administrada de Azure SQL debe estar habilitada y debe ser la identidad principal.

Después de la habilitación, si el estado de la configuración de SAMI está desactivado o habilitado inicialmente, se deshabilitará y, a continuación, se volverá a habilitar, se producirá un error en la creación de reflejo de Azure SQL Managed Instance en Fabric OneLake. SAMI después de volver a habilitar no es la misma identidad que antes de deshabilitar. Por lo tanto, debe conceder los nuevos permisos SAMI para acceder al área de trabajo de Fabric.

El SAMI debe ser la identidad principal. Compruebe que SAMI es la identidad principal con el siguiente código SQL: SELECT * FROM sys.dm_server_managed_identities;

No se admite la identidad administrada asignada por el usuario (UAMI). Si agrega una UAMI, se convierte en la identidad principal, reemplazando el SAMI como principal. Esto hace que se produzca un error en la replicación. Para resolver este problema:

  • Quite todas las UAMIs. Compruebe que el SAMI está habilitado.

Permisos SAMI

La identidad administrada asignada por el sistema (SAMI) de La instancia administrada de Azure SQL debe tener permisos de lectura y escritura en el elemento de base de datos reflejado en Microsoft Fabric. Al crear la base de datos reflejada desde el portal de Fabric, el permiso se concede automáticamente. Si se produce un error Unable to grant required permission to the source server. User does not have permission to reshare durante la instalación, asegúrese de que tiene un rol de miembro o administrador en el área de trabajo con privilegios suficientes. Cuando use la API para crear la base de datos reflejada, asegúrese de conceder el permiso explícitamente.

No quite los permisos de lectura y escritura de SAMI en el elemento de base de datos reflejado de Fabric. Si quita accidentalmente los permisos, la creación de reflejo de Azure SQL Managed Instance no funcionará según lo previsto. No se puede reflejar ningún dato nuevo desde la base de datos de origen.

Si quita los permisos o permisos SAMI de Azure SQL Managed Instance no están configurados correctamente, siga estos pasos.

  1. Agregue el SAMI como usuario seleccionando la opción de ... puntos suspensivos en el elemento de instancia administrada reflejada.
  2. Seleccione la opción Administrar permisos .
  3. Escriba el punto de conexión público de Azure SQL Managed Instance. Proporcione permisos de lectura y escritura .

Uso del registro

El uso del registro de transacciones para una base de datos habilitada para el espejo puede seguir creciendo e impedir el truncamiento del registro. Una vez que el tamaño del registro de transacciones alcanza el límite máximo definido, se producirá un error en las escrituras en la base de datos. Para protegerse de esto, la duplicación desencadena el resembrado automático de toda la base de datos cuando el espacio de registro utilizado supera un umbral del espacio total de registro configurado. Para diagnosticar esto y obtener información sobre el resembrado automático, consulte Resembrado automático para las bases de datos reflejadas de Fabric en Azure SQL Managed Instance.

La reseedación se ha iniciado automáticamente

La función de Reflejo de Red de Azure SQL Managed Instance puede reestablecerse automáticamente en determinadas condiciones, ya sea a nivel de tabla individual o para toda la base de datos. Para más información, vuelva a usar automáticamente las bases de datos reflejadas de Fabric desde Azure SQL Managed Instance.