O agente de intercalação poderá falhar durante a sincronização de replicação de intercalação no SQL Server

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 2733630
Sintomas
Durante a sincronização de replicação de intercalação do Microsoft SQL Server 2008 e versões posteriores do SQL Server, o agente de intercalação poderá falhar. Além disso, recebe a seguinte mensagem de erro:
O agente de intercalação falhou após ainda detectar que esse limpeza dos metadados de retenção baseada eliminou metadados no subscritor para que as alterações não enviados para o Publisher. Tem de reinicializar a subscrição (sem transferir). (Origem: MSSQL_REPL, número de erro: MSSQL_REPL-2147199401)

Obter ajuda: http://help/MSSQL_REPL-2147199401

Este problema poderá ocorrer por diversas razões. Estas incluem muitas razões que sejam espera que em determinadas circunstâncias. Para determinar se ter encontrado inesperadamente este erro, examine os detalhes de metadados que são descritos na secção "Causa".
Causa
A causa deste problema pode ser encontrada nas seguintes tabelas de sistema no subscritor:
  • dbo.sysMergeSubscriptions
  • dbo. MsMerge_Genhistory

Certifique-se de que o agente de intercalação já não está a sincronizar. Em seguida, execute a seguinte consulta e examine os resultados:
Seleccione sentgen de SubscriberDB.dbo.sysMergeSubscriptions quando pubid = subid e sentgen não é nulo


Resultados da consulta

A coluna sentgen marca o grupo mais antigo de alterações que o subscritor enviado para o publisher. Se forem devolvidos vários valores, examine as outras colunas na tabela dbo.sysMergeSubscriptions para se certificar de que está a ver os metadados para a publicação correcto. Em seguida, utilize o valor que esta consulta devolve a seguinte consulta:
Seleccione 20 superior * de SubscriberDB.dbo.MSmerge_genhistory onde geração > = sentgen_value ordem geração
O resultado da consulta deverá ser semelhante ao seguinte:

Resultado da consulta por geração

Poderá encontrar o erro inesperadamente quando se verificam as seguintes condições:
  • O valor na coluna a geração da primeira linha é ligeiramente superior ao valor de sentgen na consulta anterior.
  • O valor na coluna genstatus é 4.
  • O valor na coluna changecount é 0.

Nota O valor da coluna coldate da primeira linha também é normalmente muito mais antigo do que o valor dessa coluna nas outras linhas.
Resolução
Para resolver este problema, reinicializar o subscritor que produziu o erro.

Em alguns cenários, poderá conseguir resolver este problema sem uma reinicialização concluída. Contacte o suporte técnico da Microsoft para obter informações sobre uma possível solução.

Para evitar futuras ocorrências deste problema, aplique uma das seguintes correcções, dependendo da versão do SQL Server.

Informações de actualização cumulativa

SQL Server 2008

Não existe nenhuma correcção para este problema no SQL Server 2008.

SQL Server 2008 R2 Service Pack 2

A correcção deste problema publicada pela primeira vez na actualização cumulativa 3. Para mais informações sobre como obter este pacote de actualização cumulativa para o SQL Server 2008 R2 Service Pack 2, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
2754552 Pacote de actualização cumulativa 3 para SQL Server 2008 R2 Service Pack 2
Nota Uma vez que as compilações são cumulativas, cada edição contém todas as correcções e correcção de todas as correcções de segurança que foram incluídas com o anterior SQL Server 2008 R2 Service Pack 2. Recomendamos que pense em aplicar a edição de correcção mais recente que contenha esta correcção. Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Base de Dados de Conhecimento Microsoft
2730301 Cria o SQL Server 2008 R2 que foram disponibilizadas após o lançamento do SQL Server 2008 R2 Service Pack 2

SQL Server 2012

A correcção para este problema foi primeiro disponibilizada em 4 de actualização cumulativa. Para mais informações sobre como obter este pacote de actualização cumulativa para o SQL Server 2012, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
2758687 Pacote de actualização cumulativa 4 para o SQL Server 2012
Nota Uma vez que as compilações são cumulativas, cada edição contém todas as correcções e correcção de todas as correcções de segurança que foram incluídas com o anterior servidor de SQL 2012. Recomendamos que pense em aplicar a edição de correcção mais recente que contenha esta correcção. Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Base de Dados de Conhecimento Microsoft
2692828 As compilações do SQL Server 2012 disponibilizadas após o lançamento do SQL Server 2012

SQL Server 2008 R2 Service Pack 1

A correcção para este problema foi primeiro disponibilizada em 8 de actualização cumulativa. Para mais informações sobre como obter este pacote de actualização cumulativa para o SQL Server 2008 R2 Service Pack 1, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
2723743 Pacote de actualização cumulativa 8 para o SQL Server 2008 R2 SP1
Nota Uma vez que as compilações são cumulativas, cada edição contém todas as correcções e correcção de todas as correcções de segurança que foram incluídas com o anterior SQL Server 2008 R2 Service Pack 1. Recomendamos que pense em aplicar a edição de correcção mais recente que contenha esta correcção. Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Base de Dados de Conhecimento Microsoft
2567616 Cria o SQL Server 2008 R2 que foram disponibilizadas após o lançamento do SQL Server 2008 R2 SP1

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 2733630 - Última Revisão: 10/22/2015 19:55:00 - Revisão: 6.0

Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Parallel Data Warehouse, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Web, Microsoft SQL Server 2008 Workgroup, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Enterprise Core, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Web, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbtshoot kbexpertiseinter kbprb kbsurveynew kbmt KB2733630 KbMtpt
Comentários