Sincronizar datos

Se aplica a:SQL ServerAzure SQL Managed Instance

La sincronización de los datos se refiere al proceso de propagación de los cambios en los datos y el esquema entre el publicador y los suscriptores después de haber aplicado la instantánea inicial en el suscriptor. La sincronización puede producirse:

  • De forma continua, lo que es típico de la replicación transaccional.

  • A petición, lo que es típico de la replicación de mezcla.

  • De forma programada, como es habitual en la replicación de instantáneas.

Cuando se sincroniza una suscripción, se producen diferentes procesos según el tipo de replicación que se utilice:

  • Replicación de instantáneas. La sincronización significa que el Agente de distribución vuelve a aplicar la instantánea en el suscriptor, de modo que los datos y el esquema de la base de datos de suscripciones sean coherentes con la base de datos de publicación.

    Si se han realizado modificaciones de los datos o del esquema en el publicador, es necesario generar una nueva instantánea para poder propagarlas al suscriptor.

  • Replicación transaccional La sincronización significa que el Agente de distribución transfiere las actualizaciones, las inserciones, las eliminaciones y otros cambios de la base de datos de distribución al suscriptor.

  • Replicación de combinación. La sincronización significa que el Agente de mezcla carga los cambios del suscriptor en el publicador y, después, descarga los cambios del publicador en el suscriptor. Si hubiera conflictos, se detectan y se resuelven. Los datos convergen y, al final, el publicador y todos los suscriptores acaban por tener los mismos valores. Si se detectan conflictos y se resuelven, el trabajo confirmado por algunos usuarios se modifica para solucionar el conflicto según las directrices definidas.

Las publicaciones de instantánea actualizan completamente el esquema en el Suscriptor cada vez que se produce la sincronización, por lo que todos los cambios de esquema se aplican al Suscriptor. La replicación transaccional y la replicación de mezcla también admiten los cambios de esquema más comunes. Para más información, vea Realizar cambios de esquema en bases de datos de publicaciones.

Para sincronizar una suscripción push, consulta Synchronize a Push Subscription.

Para sincronizar una suscripción de extracción, vea Sincronizar una suscripción de extracción.

Para establecer programaciones de sincronización, vea Specify Synchronization Schedules.

Para ver y solucionar los conflictos de sincronización

Ejecutar código durante la sincronización

La replicación admite dos métodos de ejecución de código durante la sincronización

  • La ejecución de scripts bajo demanda es compatible con la replicación transaccional y la de mezcla. Con la ejecución de script a petición es posible especificar un script SQL para ejecutarlo durante la sincronización. Este script se copia en el suscriptor y se ejecuta mediante sqlcmd al inicio del proceso de sincronización. El script no tiene acceso a los cambios replicados cuando se aplican al suscriptor. Para más información, vea Ejecutar scripts durante la sincronización (programación de la replicación con Transact-SQL).

  • La replicación de mezcla admite controladores de lógica de negocio. Mediante el entorno de administradores de lógica de negocio, puede crear un ensamblado de código administrado que se invoca durante el proceso de sincronización de combinación. El ensamblado incluye lógica de negocios que puede responder a varias condiciones durante la sincronización: cambios de datos, conflictos y errores. Para obtener más información, consulte Ejecutar lógica empresarial durante la sincronización de combinación.