Partilhar via


Alternar entre modos de atualização para uma assinatura transacional atualizável

Aplica-se: SQL Server

Este tópico descreve como alternar entre os modos de atualização de uma assinatura de transação atualizável no SQL Server usando o SQL Server Management Studio ou o Transact-SQL. Especifique o modo para assinaturas atualizáveis usando o Assistente para Nova Assinatura. Para obter informações sobre como configurar o modo ao usar esse assistente, consulte Exibir e modificar propriedades de assinatura pull.

Neste tópico

Antes de começar

Limitações e Restrições

  • É possível realizar failover da atualização imediata para a atualização em fila a qualquer momento. Entretanto, após fazê-lo, não será possível retornar para atualização imediata até que o Assinante ou o Publicador esteja conectado e o Queue Reader Agent tenha aplicado todas as mensagens pendentes na fila para o Publicador.

Recomendações

  • Quando uma assinatura de atualização para uma publicação transacional oferecer suporte para failover de um modo de atualização para outro, você poderá alternar programaticamente os modos de atualização para tratar situações em que a conectividade muda por um curto intervalo de tempo. O modo de atualização pode ser definido programaticamente e sob demanda usando procedimentos armazenados de replicação. Para obter mais informações, consulte Updatable Subscriptions for Transactional Replication.

Como usar o SQL Server Management Studio.

Observação

Para alterar o modo de atualização após a criação da assinatura, a propriedade update_mode deve ser definida como failover (que permite a troca de atualização imediata para atualização na fila) ou failover na fila (que permite a troca de atualização na fila para atualização imediata) quando a assinatura é criada. Essas propriedades são definidas automaticamente no Assistente para Nova Assinatura.

Para definir o modo de atualização para uma assinatura push

  1. Conecte-se ao Assinante no SQL Server Management Studio e, em seguida, expanda o nó de servidor.

  2. Expanda a pasta Replicação e, então, expanda a pasta Assinaturas Locais .

  3. Clique com o botão direito na assinatura para a qual se quer definir o modo de atualização e, então, clique em Configurar Método de Atualização.

  4. Na caixa de diálogo Configurar Método de Atualização – <Subscriber><SubscriptionDatabase>, selecione Atualização imediata ou Atualização na fila.

  5. Selecione OK.

Para definir o modo de atualização para uma assinatura pull

  1. Na caixa de diálogo Propriedades de Assinatura – <Publisher>: <PublicationDatabase>, selecione um valor de Replicar as atualizações imediatamente ou Enfileirar alterações para a opção Método de atualização do assinante.

  2. Selecione OK.

Para obter mais informações sobre como acessar a caixa de diálogo Propriedades da Assinatura – <Publisher:> <PublicationDatabase>, consulte Exibir e modificar propriedades de assinatura pull.

Usando o Transact-SQL

Para alternar entre modos de atualização

  1. Verifique se a assinatura oferece suporte para failover executando sp_helppullsubscription para uma assinatura pull ou sp_helpsubscription para uma assinatura push. Se o valor do modo de atualização no conjunto de resultados for 3 ou 4, há suporte para failover.

  2. No Assinante, no banco de dados da assinatura, execute sp_setreplfailovermode. Especifique @publisher, @publisher_db, @publication, e um dos seguintes valores para @failover_mode:

    • em fila - failover para atualização em fila quando a conectividade for perdida temporariamente.

    • imediato - failover para a atualização imediata quando conectividade for restaurada.