CORRECÇÃO: Falha do serviço de distribuição mensagem de erro "Violação de restrição de chave principal"

Traduções de Artigos Traduções de Artigos
Artigo: 813494 - Ver produtos para os quais este artigo se aplica.
N.º DE BUGS: 363920 (SHILOH_BUGS)
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

O serviço de distribuição para replicação transaccional poderá falhar com uma violação de chave primária numa tabela temporária de replicação e receberá a seguinte mensagem de erro:
Violação de restrição de chave primária ' PK__@snapshot_seqnos__{UniqueNumber} '. Não é possível inserir chave duplicada no objecto '# {UniqueNumber}'.


Este problema poderá ocorrer depois de aplicar a actualização de segurança do SQL Server 2000 para o Service Pack 2, versão 8.00.0679. Para verificar que está a executar esta actualização de segurança, ligar ao SQL Server utilizando o analisador de consultas e, em seguida, execute:
select @@version


Este problema é corrigido para o SQL Server 2000 Service Pack 2 sistemas que executem versão 8.00.0733.

O problema também existe no SQL Server 2000 Service Pack 3, versão 8.00.0760. Para corrigir esta versão, tem de aplicar conjunto de SQL Server 2000 Service Pack 3, versão 8.00.0765.

Tem de aplicar a correcção para este problema para a instância do SQL Server onde reside a base de dados distirbution. Este artigo aborda uma causa possível desta mensagem. Esta correcção apenas ajuda a se estão a encontrar o cenário exacto que é descrito neste artigo.

Resolução

Informações sobre Service Packs

Para resolver este problema, obtenha o service pack mais recente do Microsoft SQL Server 2000. Para obter informações adicionais, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
290211Como obter o SQL Server 2000 service pack mais recente

Informações sobre a correcção

A versão inglesa desta correcção tem os atributos de ficheiro (ou posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são indicadas no formato de universal hora (UTC) coordenada Coordinated. Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador fuso horário na ferramenta Data e hora no painel de controlo.

SQL Server 2000 Service Pack 2

Utilize esta compilação de correcção para um servidor que está a executar o SQL Server 2000 Service Pack 2.
   Date         Time   Version         Size             File name
   -------------------------------------------------------------------------

   17-Jan-2002  20:45  2000.80.568.0      29,244 bytes  Dbmslpcn.dll
   17-Jan-2003  18:23                    786,432 bytes  Distmdl.ldf
   17-Jan-2003  18:23                  2,359,296 bytes  Distmdl.mdf
   11-Dec-2002  09:50                        180 bytes  Drop_repl_hotfix.sql
   02-Jul-2002  07:35  2000.80.650.0     107,088 bytes  Impprov.dll
   11-Dec-2002  09:50                      1,402 bytes  Inst_repl_hotfix.sql
   17-Jan-2003  12:33                    774,409 bytes  Instdist.sql
   20-Aug-2002  08:24  2000.80.679.0     111,172 bytes  Logread.exe
   15-Dec-2002  15:21  2000.80.717.0      90,692 bytes  Msgprox.dll
   06-Apr-2002  18:08  2000.80.606.0      62,024 bytes  Odsole70.dll
   02-Jan-2002  17:59                     18,185 bytes  Qfe356326.sql
   20-Aug-2002  08:47  2000.80.679.0     135,748 bytes  Qrdrsvc.exe
   26-Aug-2002  14:49  2000.80.679.0     406,088 bytes  Rdistcom.dll
   03-Oct-2001  17:36                    437,302 bytes  Replcom.sql
   20-Aug-2002  08:33  2000.80.679.0     152,136 bytes  Replmerg.exe
   25-Nov-2002  13:43                  1,004,990 bytes  Replmerg.sql
   15-Dec-2002  15:21  2000.80.717.0     221,768 bytes  Replprov.dll
   15-Dec-2002  15:21  2000.80.717.0     303,688 bytes  Replrec.dll
   03-Oct-2001  17:36                    986,906 bytes  Replsys.sql
   03-Oct-2001  17:36                    881,228 bytes  Repltran.sql
   26-Aug-2002  14:49  2000.80.679.0     283,208 bytes  Rinitcom.dll
   16-Sep-2002  14:31                    390,045 bytes  Securityhotfix.sql
   26-Aug-2002  14:49  2000.80.679.0      28,672 bytes  Sqlagent.dll
   26-Aug-2002  10:39  2000.80.679.0     311,872 bytes  Sqlagent.exe
   28-Aug-2002  08:32  2000.80.679.0      49,152 bytes  Sqlagent.rll
   26-Aug-2002  14:49  2000.80.679.0      53,824 bytes  Sqlcmdss.dll
   28-Aug-2002  08:40  2000.80.679.0      12,288 bytes  Sqlcmdss.rll
   14-Jan-2003  13:39  2000.80.725.0     172,600 bytes  Sqlmap70.dll
   14-Jan-2003  13:39  2000.80.725.0   7,479,377 bytes  Sqlservr.exe
   01-Nov-2002  10:56  2000.80.698.0      45,644 bytes  Sqlvdi.dll
   17-Jan-2002  20:45  2000.80.568.0      29,244 bytes  Ssmslpcn.dll
   19-Dec-2002  16:55  2000.80.719.0      82,492 bytes  Ssnetlib.dll
   02-Jan-2003  12:12  2000.80.722.0      25,148 bytes  Ssnmpn70.dll
   06-Apr-2002  18:08  2000.80.606.0      70,208 bytes  Xplog70.dll
   06-Apr-2002  18:08  2000.80.606.0      53,828 bytes  Xpqueue.dll
   06-Apr-2002  18:08  2000.80.606.0     156,228 bytes  Xprepl.dll
   11-Jul-2002  17:00  2000.80.658.0     279,104 bytes  Xpstar.dll
   16-Sep-2002  15:12  2000.80.686.0      98,872 bytes  Xpweb70.dll

SQL Server 2000 Service Pack 3

Utilize esta compilação de correcção para um servidor que está a executar o SQL Server 2000 Service Pack 3.
 
   Date         Time   Version         Size             File name
   ---------------------------------------------------------------------------

   08-Feb-2003  05:43                    786,432 bytes  Distmdl.ldf
   08-Feb-2003  05:43                  2,359,296 bytes  Distmdl.mdf
   30-Jan-2003  01:55                        180 bytes  Drop_repl_hotfix.sql
   30-Jan-2003  05:18                    746,470 bytes  Instdist.sql
   30-Jan-2003  01:55                      1,402 bytes  Inst_repl_hotfix.sql
   08-Feb-2003  06:40  2000.80.765.0      90,692 bytes  Msgprox.dll      
   08-Feb-2003  03:53                  1,065,895 bytes  Replmerg.sql
   08-Feb-2003  06:40  2000.80.765.0     221,768 bytes  Replprov.dll     
   08-Feb-2003  06:40  2000.80.765.0     307,784 bytes  Replrec.dll      
   30-Jan-2003  05:18                  1,084,318 bytes  Replsys.sql
   08-Feb-2003  06:40  2000.80.765.0     176,696 bytes  Sqlmap70.dll     
   08-Feb-2003  06:40  2000.80.765.0      57,920 bytes  Sqlrepss.dll     
   08-Feb-2003  06:41  2000.80.765.0   7,528,529 bytes  Sqlservr.exe     
   08-Feb-2003  06:40  2000.80.765.0      45,644 bytes  Sqlvdi.dll       
   08-Feb-2003  06:40  2000.80.765.0      82,492 bytes  Ssnetlib.dll     
				
Nota : devido a dependências de ficheiros, a correcção ou funcionalidade que contém os ficheiros mais recentes poderão também conter ficheiros adicionais.


Ponto Da Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".Este problema foi corrigido pela primeira vez no Microsoft SQL Server 2000 Service Pack 4.

Mais Informação

Esta correcção também está disponível no patch de segurança MS03-031.Para obter informações adicionais sobre o patch de segurança MS03-031, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
821277MS03-031: Patch de segurança para o SQL Server 2000 Service Pack 3

Propriedades

Artigo: 813494 - Última revisão: 2 de novembro de 2007 - Revisão: 11.4
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
Palavras-chave: 
kbmt kbhotfixserver kbqfe kbqfe kbsqlserv2000presp4fix kbfix kbbug KB813494 KbMtpt
Tradução automática
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: 813494

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com