Partilhar via


Sincronizar dados

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure

Sincronizando dados se refere ao processo de alterações de dados e esquemas sendo propagadas entre o Publicador e os Assinantes após o instantâneo inicial ter sido aplicado ao Assinante. A sincronização pode acontecer:

  • Continuamente, o que é típico para replicação transacional.

  • Sob demanda, o que é típico para replicação de mesclagem.

  • Em um agendamento, o que é típico para replicação de instantâneo.

Quando uma assinatura é sincronizada, diferentes processos acontecem baseados no tipo de replicação que você está usando:

  • Replicação de instantâneo A sincronização significa que o Agente de Distribuição reaplicou o instantâneo ao Assinante para que o esquema e os dados no banco de dados da assinatura sejam consistentes com o bando de dados da publicação.

    Se alterações nos dados ou no esquema tiverem sido feitas no Publicador, um novo instantâneo deve ser gerado para propagar as modificações ao Assinante.

  • Replicação transacional. A sincronização significa que o Agente de Distribuição transfere atualizações, inserções, exclusões e quaisquer outras modificações do banco de dados de distribuição ao Assinante.

  • Replicação de mesclagem. A sincronização significa que o Agente de Mesclagem carrega alterações do Assinante ao Publicador e depois baixa as alterações do Publicador ao Assinante. Conflitos, se houver, são detectados e resolvidos. Os dados são convergidos e o Publicador e todos os Assinantes eventualmente acabam com os mesmos valores de dados. Se os conflitos forem detectados e resolvidos, o trabalho que foi confirmado por alguns usuários é alterado para resolver o conflito de acordo com a política que você definir.

Publicações de instantâneo atualizam completamente o esquema no Assinante cada vez que ocorrer uma sincronização, assim todas as alterações de esquema são aplicadas ao Assinante. Replicação transacional e replicação de mesclagem também oferecem suporte às alterações de esquema mais comuns. Para obter mais informações, consulte Make Schema Changes on Publication Databases (Fazer alterações de esquema em bancos de dados de publicação).

Para sincronizar uma assinatura push, consulte Synchronize a Push Subscription.

Para sincronizar uma assinatura pull, consulte Synchronize a Pull Subscription.

Para definir agendas de sincronização, consulte Specify Synchronization Schedules.

Para exibir e resolver conflitos de sincronização

Executando código durante sincronização

A replicação suporta dois métodos de execução de código durante a sincronização

  • A execução de script sob demanda tem suporte para replicação transacional e replicação de mesclagem. Usando em execução de script sob demanda, você pode especificar um script SQL para ser executado durante a sincronização. O script é copiado ao Assinante e executado usando sqlcmd no começo do processo de sincronização. O script não tem acesso às alterações replicadas enquanto elas são aplicadas ao Assinante. Para obter mais informações, consulte Executar scripts durante a sincronização (Programação do Transact-SQL de Replicação).

  • Manipuladores de lógica de negócios possuem suporte para replicação de mesclagem. Usando a estrutura dos manipuladores de lógica de negócios, você pode escrever um assembly de código gerenciado durante o processo de sincronização de mesclagem. O assembly inclui lógica comercial que pode responder a uma série de condições durante a sincronização: alterações de dados, conflitos e erros. Para obter mais informações, consulte Executar lógica de negócios durante a sincronizações de mesclagem.