CORRECÇÃO: Mensagem de erro ao tentar instalar o SQL Server 2005: "[Microsoft] [SQL Native Client] [SQL Server] O certificado não pode ser descartado porque uma ou mais entidades ou são assinadas ou criptografadas usá-lo"

Traduções deste artigo Traduções deste artigo
ID do artigo: 955920 - Exibir os produtos aos quais esse artigo se aplica.
Bug #: 50003040 (Hotfix do SQL)
A Microsoft distribui correções do Microsoft SQL Server 2005 como um arquivo para download. Como as correções são cumulativas, cada versão nova contém todos os hotfixes e todos os as correções de segurança que foram incluídas com o anterior SQL Server 2005 corrigir lançamento.
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Quando você tenta instalar o Microsoft SQL Server 2005, você receber a seguinte mensagem de erro:
Instalação do SQL Server encontrou o seguinte problema: [Microsoft] [SQL Native Client] [SQL Server] O certificado não pode ser descartado porque uma ou mais entidades ou são assinadas ou criptografadas usá-lo. Para continuar, corrija o problema e execute a instalação do SQL Server novamente.
Além disso, a seguinte mensagem de erro é registrada no arquivo Errorlog do SQL Server 2005:
SQL_ERROR (-1) em OdbcStatement::execute_batch
SqlState = 01000, nível = 0, estado = 1, native_error = 0, mensagem = sps de assinatura [Microsoft] [SQL Native Client] [SQL Server]...
SqlState = 42000, nível = 16, estado = 1, native_error = 15352, mensagem = [Microsoft] [SQL Native Client] [SQL Server] O certificado não pode ser descartado porque uma ou mais entidades ou são assinadas ou criptografadas usá-lo.
SqlState = 42000, nível = 16, estado = 1, native_error = 15232, mensagem = [Microsoft] [SQL Native Client] [SQL Server] um certificado com nome ' ## MS_AgentSigningCertificate ## ' já existe ou este certificado já foi adicionado ao banco de dados.
SqlState = HY000, nível = 0, estado = 0, native_error = 0, mensagem = [Microsoft] [SQL Native Client] erro não especificado no SQL Server. Conexão pode ter sido encerrada pelo servidor.
SqlState = 42000, nível = 16, estado = 2, native_error = 2745, mensagem = [Microsoft] [SQL Native Client] [SQL Server] 51 de identificação de processo tem aumentado usuário erro 50000, gravidade 20. SQL Server está encerrando esse processo.
SqlState = HY000, nível = 20, estado = 127, native_error = 50000, mensagem = [Microsoft] [SQL Native Client] [SQL Server] não é possível criar ## MS_AgentSigningCertificate ## no msdb. INSTMSDB.SQL encerrando.
PRINT 'Assinatura sps...'
Se existe (Selecione * de sys.certificates onde nome = ' ## MS_AgentSigningCertificate ## ')
soltar certificado [## MS_AgentSigningCertificate ##]
Criar certificado [## MS_AgentSigningCertificate ##]
criptografia por senha = 'Yukon90_'
com o assunto = 'MS_AgentSigningCertificate'
IF (@@ erro <> 0)
RAISERROR('Cannot Create ##MS_AgentSigningCertificate## in msdb. Encerrando INSTMSDB.SQL. ', 20, 127) WITH LOG
Esse problema ocorre quando uma compilação mais recente do SQL Server 2005 ou compilação 3156 está instalada e uma das seguintes condições for verdadeira:
  • Você tentar atualizar o SQL Server 2005 para uma versão mais recente.
  • Você usar a opção USESYSDB para instalar o SQL Server 2005. Essa opção usa bancos de dados sistema da instalação existente.

Resolução

Informações da atualização cumulativa

SQL Server 2005 Service Pack 2

importante Você deve usar essa correção se você estiver executando o SQL Server 2005 Service Pack 2.

A correção para esse problema foi lançada primeiro na atualização cumulativa 10 para o SQL Server 2005 Service Pack 2. Para obter mais informações sobre esse pacote de atualizações cumulativas, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
956854Pacote de atualizações cumulativas 10 para SQL Server 2005 Service Pack 2
Observação Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e todas as correções de segurança foram incluídas com o anterior SQL Server 2005 corrigir lançamento. A Microsoft recomenda que você considere a aplicação a versão de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
937137Compilações do SQL Server 2005 lançados após o SQL Server 2005 Service Pack 2 foi lançado
Microsoft SQL Server 2005 hotfixes são criados para service packs do SQL Server específicos. Você deve aplicar um hotfix do SQL Server 2005 Service Pack 2 para uma instalação do SQL Server 2005 Service Pack 2. Por padrão, qualquer hotfix fornecidas em um SQL Server service pack está incluído no service pack seguinte do SQL Server.

SQL Server 2005 Service Pack 3

importante Você deve usar essa correção se você estiver executando o SQL Server 2005 Service Pack 3.

A correção para esse problema também posterior foi lançada na atualização cumulativa 1 para o SQL Server 2005 Service Pack 3. Para obter mais informações sobre esse pacote de atualizações cumulativas, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
959195Pacote de atualizações cumulativas 1 para SQL Server 2005 Service Pack 3
Observação Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e todas as correções de segurança foram incluídas com o anterior SQL Server 2005 corrigir lançamento. A Microsoft recomenda que você considere a aplicação a versão de correção mais recente que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
960598Compilações do SQL Server 2005 lançados após o lançamento do SQL Server 2005 Service Pack 3
Microsoft SQL Server 2005 hotfixes são criados para service packs do SQL Server específicos. Você deve aplicar um hotfix do SQL Server 2005 Service Pack 3 para uma instalação do SQL Server 2005 Service Pack 3. Por padrão, qualquer hotfix fornecidas em um SQL Server service pack está incluído no service pack seguinte do SQL Server.

anotações
  • Se esse problema ocorrer quando você usa a opção USESYSDB para instalar o SQL Server 2005, aplicar esse hotfix para o servidor de origem. Depois de aplicar o hotfix, faça uma cópia dos arquivos de banco de dados do sistema. Use este conjunto mais recente de arquivos de banco de dados do sistema quando você usa a opção USESYSDB para instalar o SQL Server 2005.
  • Se esse problema ocorre quando você tenta atualizar o SQL Server 2005 para uma versão mais recente, aplicar esse hotfix e, em seguida, executar a atualização.

Como Contornar

Para contornar este problema, use um dos seguintes métodos.

Método 1

Se esse problema ocorre quando você usar a opção USESYSDB para instalar o SQL Server 2005, execute essas etapas:
  1. Execute as seguintes instruções na instalação existente do SQL Server. Esta operação remove a dependência entre o certificado e o procedimento sp_validate_user armazenados.
    USE msdb
    GO
    
    IF (EXISTS (SELECT * FROM msdb.dbo.sysobjects WHERE (name = N'sp_validate_user')))
    DROP PROCEDURE sp_validate_user
    GO
    
  2. Faça uma cópia de bancos de dados do sistema.

    Observação Para recriar o sp_validate_user armazenado procedimento depois de fazer uma cópia dos bancos de dados do sistema, execute o script sysdbupg.sql localizado na seguinte pasta:
    C:\Program Files\Microsoft SQL Server\MSSQL. x \MSSQL\Install
    Em seguida, execute as instruções a seguir para se certificar que o procedimento armazenado sp_validate_user está na lista de resultados.
    USE msdb
    GO
    
    SELECT object_name(crypts.major_id) 
    FROM sys.crypt_properties crypts, sys.certificates as certs 
    WHERE crypts.thumbprint = certs.thumbprint and crypts.class = 1 and certs.name = '##MS_AgentSigningCertificate##'
    GO
    
  3. Use os bancos de dados sistema que você copiou na etapa 2 quando você instala o SQL Server 2005 usando a opção USESYSDB.
  4. Instale o SQL Server 2005 Service Pack 2 e a atualização cumulativa mais recente para o SQL Server 2005.

    Observação Não é necessário recriar manualmente o procedimento armazenado sp_validate_user. Esse procedimento armazenado será criado e assinado pelo certificado quando você instalar a atualização cumulativa.
Se esse problema ocorre quando você tenta atualizar o SQL Server 2005 para uma versão mais recente, execute essas etapas:
  1. Execute as seguintes instruções na instalação existente do SQL Server. Esta operação remove a dependência entre o certificado e o procedimento sp_validate_user armazenados.
    USE msdb
    GO
    
    IF (EXISTS (SELECT * FROM msdb.dbo.sysobjects WHERE (name = N'sp_validate_user')))
    DROP PROCEDURE sp_validate_user
    GO
    
  2. Execute o programa de instalação para atualizar o SQL Server 2005.
  3. Executar as instruções a seguir para garantir que o sp_validate_user procedimento armazenado está na lista de resultados.
    USE msdb
    GO
    
    SELECT object_name(crypts.major_id) 
    FROM sys.crypt_properties crypts, sys.certificates as certs 
    WHERE crypts.thumbprint = certs.thumbprint and crypts.class = 1 and certs.name = '##MS_AgentSigningCertificate##'
    GO
    

Método 2

  1. Defina uma variável de ambiente sistema chamado SqlStop . Defina seu valor como ComponentUpgrade .

    Para fazer isso em um computador que está executando o Windows XP, execute as seguintes etapas:
    1. Clique com o botão direito do mouse Meu computador e, em seguida, clique em Propriedades .
    2. Clique na guia Avançado .
    3. Clique em variáveis de ambiente .
    4. Em variáveis de sistema , clique em novo e adicione uma nova variável que é chamada SqlStop .
    Para fazer isso em um computador que está executando o Windows Vista, execute as seguintes etapas:
    1. Clique com o botão direito do mouse em computador e, em seguida, clique em Propriedades .
    2. No painel de navegação, clique em configurações do sistema avançado .
    3. Clique na guia Avançado .
    4. Clique em variáveis de ambiente .
    5. Em variáveis de sistema , clique em novo e adicione uma nova variável que é chamada SqlStop .
  2. Use a opção USESYSDB para atualizar ou instalar o SQL Server 2005. Programa de instalação pára, e uma caixa de diálogo depuração aparece antes de instalação executa os scripts de atualização. Deixe esta caixa de diálogo aberta até a etapa 4.
  3. Quando pára de instalação, abra o arquivo de script Sqlagent90_msdb_upgrade.sql localizado na seguinte pasta:
    <SQL Server Installation Directory>\MSSQL\Upgrade de x \MSSQL.
    Adicione as seguintes linhas ao arquivo de script na seção de juros com adições:
    --- section of interest with additions
    IF (EXISTS (SELECT *
                FROM msdb.dbo.sysobjects
                WHERE (name = N'sp_validate_user')))
      DROP PROCEDURE sp_validate_user
    go
    
    if exists (select * from sys.certificates where name = '##MS_AgentSigningCertificate##')
       drop certificate [##MS_AgentSigningCertificate##]
    
  4. Continuar a instalação, clicando em OK na caixa de diálogo de depuração.
  5. Instale o SQL Server 2005 Service Pack 2 e a atualização cumulativa mais recente para o SQL Server 2005.

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Mais Informações

Para mais informações sobre quais arquivos são alterados e para obter informações sobre quaisquer pré-requisitos para aplicar o pacote de atualização cumulativa que contém o hotfix descrito neste artigo, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
956854Pacote de atualizações cumulativas 10 para SQL Server 2005 Service Pack 2

Referências

Para obter mais informações sobre a lista de compilações disponibilizadas após o SQL Server Service Pack 2, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
937137Lista de compilações disponibilizadas após o lançamento do SQL Server 2005 Service Pack 2
Para obter mais informações sobre o modelo incremental de serviços para o SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
935897Há um modelo incremental de serviços da equipe do SQL Server para fornecer hotfixes para problemas relatados
Para obter mais informações sobre como obter o SQL Server 2005 Service Pack 2, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
913089Como obter o service pack mais recente para o SQL Server 2005
Para obter mais informações sobre os novos recursos e os aprimoramentos no SQL Server 2005 Service Pack 2, visite o seguinte site:
http://go.microsoft.com/fwlink/?LinkId=71711
Para obter mais informações sobre o esquema para nomeação para atualizações do SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
822499Novo esquema para nomeação para pacotes de atualização de software do Microsoft SQL Server
Para obter mais informações sobre terminologia de atualização de software, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684Descrição da terminologia padrão que é usada para descrever as atualizações de software

Propriedades

ID do artigo: 955920 - Última revisão: sábado, 20 de dezembro de 2008 - Revisão: 4.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Workgroup Edition
Palavras-chave: 
kbmt kbhotfixrollup kbfix kbpubtypekc kbqfe kbexpertiseadvanced KB955920 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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 955920

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