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

Aplica-se a: SQL Server

Este tópico descreve como alternar entre modos de atualização para uma subscrição de transação atualizável no SQL Server utilizando o SQL Server Management Studio ou Transact-SQL. Especifique o modo para subscrições atualizáveis usando o Assistente de Nova Subscrição. Para informações sobre como definir o modo ao usar este assistente, veja Visualizar e Modificar Propriedades de Subscrição de Pull.

Limitações e Restrições

  • Pode mudar da atualização imediata para a atualização em fila a qualquer momento. Depois de o fazer, no entanto, não pode voltar à atualização imediata até que o Subscritor e o Publicador estiverem ligados e o Agente Leitor de Fila tiver aplicado ao Publicador todas as mensagens pendentes na fila.

Recommendations

  • Quando uma subscrição de atualização de uma publicação transacional suporta a ativação pós-falha de um modo de atualização para outro, pode alternar programaticamente entre modos de atualização para lidar com situações em que a conectividade se altera durante um curto período de tempo. O modo de atualização pode ser definido programaticamente e sob demanda, utilizando procedimentos armazenados de replicação. Para mais informações, consulte Subscrições Atualizáveis para Replicação Transacional.

Usando o SQL Server Management Studio

Note

Para alterar o modo de atualização após a criação da subscrição, a propriedade update_mode deve ser definida para failover (que permite a mudança de atualização imediata para atualização em fila) ou failover em fila (que permite alternar entre atualização em fila e atualização imediata) quando a subscrição é criada. Estas propriedades são definidas automaticamente no Assistente de Nova Subscrição.

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

  1. Liga-te ao Assinante no SQL Server Management Studio e, em seguida, expande o nó do servidor.

  2. Expanda a pasta Replicação e depois expanda a pasta Subscrições Locais .

  3. Clique com o botão direito na subscrição para a qual pretende definir o modo de atualização e depois clique em Definir Método de Atualização.

  4. Na caixa de diálogo Set Update Method - <Subscriber>: <SubscriptionDatabase> , selecione Atualização Imediata ou Atualização em Fila.

  5. Selecione OK.

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

  1. Na caixa de diálogo Propriedades de Subscrição - <Publisher>: <PublicationDatabase>, selecione um valor de Replicar imediatamente alterações ou Alterações em Fila para a opção de atualização do assinante.

  2. Selecione OK.

Para mais informações sobre como aceder à caixa de diálogo Propriedades da Subscrição - <Editor>: <Base de Dados de Publicação>, consulte Ver e Modificar as Propriedades da Subscrição Pull.

Usando Transact-SQL

Para alternar entre modos de atualização

  1. Verifique se a subscrição suporta failover executando sp_helppullsubscription para uma subscrição pull ou sp_helpsubscription para uma subscrição push. Se o valor do modo de atualização no conjunto de resultados for 3 ou 4, o failover é suportado.

  2. No Subscritor, na base de dados de subscrição, execute sp_setreplfailovermode. Especifique @publisher, @publisher_db, @publication, e um dos seguintes valores para @failover_mode:

    • em fila - recorre à atualização em fila quando a conectividade é temporariamente perdida.

    • Imediato - mudar para o modo de atualização imediata quando a conectividade for restabelecida.