ID do artigo: 943525 - Última revisão: sexta-feira, 30 de outubro de 2009 - Revisão: 3.0

Não é possível iniciar o serviço SQL Server Agent de um cluster de failover do SQL Server 2005 se a compilação do SQL Server for 3179 ou uma compilação posterior

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Importante Este artigo contém informações sobre como modificar o registro. Certifique-se de fazer backup do registro antes de modificá-lo. Certifique-se de que você saiba como restaurar o registro se ocorrer um problema. Para obter mais informações sobre como fazer backup, restaurar e modificar o registro, clique no número abaixo para ler o artigo na Base de dados de Conhecimento:
322756  (http://support.microsoft.com/kb/322756/ ) Como fazer backup e restaurar o registro no Windows

Nesta página

Expandir tudo | Recolher tudo

Sintomas

Considere o seguinte cenário:
  • Instalar e configurar um cluster de failover do Microsoft SQL Server 2005.
  • A compilação do SQL Server 2005 é 3179 ou uma compilação posterior.
  • A conta de inicialização do serviço SQL Server Agent é uma conta de usuário do administrador de domínio.
Nessa situação, você não pode iniciar o serviço SQL Server Agent. Além disso, a seguinte mensagem de erro é registrada no log do SQL Server Agent (Sqlagent.out):
10:46:24 2007-10-10-! [298] Error SQLServer: CryptUnprotectData() 22022, retornou erro-2146892987, ' A operação solicitada não pode ser concluída. O computador deve ser confiável para delegação e a conta de usuário atual deve ser configurada para permitir a delegação. ' [SQLSTATE 42000]
10:46:24 2007-10-10-! [442] ConnConnectAndSetCryptoForXpstar falha (0).
Observação O arquivo Sqlagent.out está na seguinte pasta:
\MSSQL\LOG Instance_Number %ProgramFiles%\Microsoft SQL Server\MSSQL.

Causa

Esse problema ocorre porque o serviço SQL Server Agent não pode se conectar ao serviço do SQL Server.

Quando o serviço SQL Server Agent é iniciado, ele se conecta ao serviço do SQL Server. O serviço SQL Server Agent executa o procedimento armazenado xp_sqlagent_notify para notificar o serviço SQL Server Agent de alterações. Enquanto o procedimento armazenado xp_sqlagent_notify é executado, uma chamada para uma API criptográfica falha. Portanto, o serviço SQL Server Agent não pode se conectar ao serviço do SQL Server.

Resolução

Correção para esse problema foi lançada primeiro na atualização cumulativa 9. Para obter mais informações sobre como obter esse pacote de atualização cumulativa para SQL Server 2005 Service Pack 2, clique no número abaixo para ler o artigo na Base de dados de Conhecimento:
953752  (http://support.microsoft.com/kb/953752/LN/ ) Pacote de atualização cumulativa 9 para SQL Server 2005 Service Pack 2
Observação Como as compilações são cumulativas, cada novo lançamento de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o SQL Server 2005 anteriores corrigir lançamento. A Microsoft recomenda que você considere aplicar o lançamento mais recente de correção 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:
937137  (http://support.microsoft.com/kb/937137/LN/ ) Compilações do SQL Server 2005 que foram lançadas após o lançamento do SQL Server 2005 Service Pack 2
Hotfixes do Microsoft SQL Server 2005 são criados para específicos de service packs do SQL Server. 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 é fornecido no service pack do SQL Server está incluído no service pack próximo do SQL Server.

Como Contornar

Para contornar esse problema, considere cada um dos seguintes métodos e use aquela que é um ajuste melhor ao seu ambiente:

Método 1

Para contornar esse problema, fazer logon no computador usando uma conta de usuário que possui credenciais suficientes para conectar ao SQL Server 2005 e para executar todos os trabalhos são criados. Por exemplo, faça logon como um usuário que é um membro do grupo Administradores local. Em seguida, altere a conta de inicialização do SQL Server Agent para uma conta de usuário de domínio não administrador. A conta de usuário deve ter os direitos apropriados. Por exemplo, o usuário deve ser um membro do grupo Administradores local.

Para fazer isso, execute essas etapas:
  1. Clique em Iniciar, clique em programas, clique em Microsoft SQL Server 2005, clique em Ferramentas de configuração e clique em SQL Server Configuration Manager.
  2. Clique em serviços do SQL Server 2005.
  3. Clique com o botão direito do mouse em SQL Server Agent (Instance_Name) e clique em Propriedades.
  4. Clique Na guia logon, digite as informações de logon do usuário e clique em OK.
  5. Clique com o botão direito do mouse em SQL Server Agent (Instance_Name) e clique em reiniciar. Se o serviço SQL Server Agent não estiver sendo executado, clique com o botão direito do mouse em SQL Server Agent (Instance_Name) e clique em Iniciar.

Método 2

No Active Directory Users e Computers snap-in, habilite a conta de serviço do SQL Server ser confiável para delegação.

Observação Não é necessário reiniciar qualquer recurso após habilitar a conta de serviço do SQL Server ser confiável para delegação. Para obter mais informações sobre como habilitar uma conta de serviço ser confiável para delegação, visite o seguinte site:
http://technet2.microsoft.com/WindowsServer/en/library/bef202b0-c8e9-4999-9af7-f56b991a4fd41033.mspx?mfr=true (http://technet2.microsoft.com/WindowsServer/en/library/bef202b0-c8e9-4999-9af7-f56b991a4fd41033.mspx?mfr=true)

Método 3

Configure o SQL Server Agent para conectar o serviço do SQL Server usando o protocolo pipes nomeados. Para fazer isso, execute essas etapas em cada nó de cluster:
  1. Abra o SQL Server Configuration Manager.
  2. No SQL Server Configuration Manager, clique em Configuração do SQL Native Client, clique com o botão direito do mouse aliases e clique em Novo Alias.
  3. Na caixa de diálogo New - alias, selecione Pipes nomeados na lista de protocolo.
  4. Na caixa Alias Name, especifique o nome do alias.
  5. Na caixa servidor, especifique a instância do SQL Server 2005 e clique em OK.
  6. Abra o SQL Server Management Studio e conectar a instância do SQL Server 2005.
  7. Clique com o botão direito do mouse em SQL Server Agent e clique em Propriedades.
  8. Na caixa de diálogo SQL Server Agent Properties, clique em conexão.
  9. Na caixa servidor de host local alias, digite o nome do alias que você especificou na etapa 4 e clique em OK.
  10. No SQL Server Management Studio, clique com o botão direito do mouse em SQL Server Agent e clique em reiniciar.

Se o protocolo de pipe nomeado não estiver habilitado, você deve habilitar o protocolo de pipe nomeado. Para obter mais informações sobre como habilitar o protocolo de pipe nomeado, visite o seguinte site:
http://msdn.microsoft.com/en-us/library/ms191294(SQL.90).aspx (http://msdn.microsoft.com/en-us/library/ms191294(SQL.90).aspx)
Se a instância do SQL Server 2005 não está configurada para escutar no pipe nomeado, você deve configurar a instância para escutar no pipe nomeado. Para obter mais informações, visite o seguinte site:
http://msdn.microsoft.com/en-us/library/ms189321(SQL.90).aspx (http://msdn.microsoft.com/en-us/library/ms189321(SQL.90).aspx)
Observação Após adicionar o alias, todos os aplicativos de cliente localmente se conecta à instância usam o protocolo pipes nomeados para conexão.

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:
937137  (http://support.microsoft.com/kb/937137/LN/ ) Compilações do SQL Server 2005 que foram lançadas após o lançamento do SQL Server 2005 Service Pack 2
Para obter mais informações sobre o modelo de serviços incrementais para SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento:
935897  (http://support.microsoft.com/kb/935897/LN/ ) Um modelo de serviços incrementais está disponível 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:
913089  (http://support.microsoft.com/kb/913089/LN/ ) Como obter o service pack mais recente do SQL Server 2005
Para obter mais informações sobre novos recursos e melhorias no SQL Server 2005 Service Pack 2, visite o seguinte site:
http://go.microsoft.com/fwlink/?LinkId=71711 (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:
822499  (http://support.microsoft.com/kb/822499/LN/ ) Novo esquema para nomeação dos pacotes de atualização de software Microsoft SQL Server
Para obter mais informações sobre a terminologia de atualização de software, clique no número abaixo para ler o artigo na Base de dados de Conhecimento:
824684  (http://support.microsoft.com/kb/824684/ ) Descrição da terminologia padrão usada para descrever as atualizações de software

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 Enterprise X64 Edition
Palavras-chave: 
kbmt kbexpertiseadvanced kbtshoot kbprb KB943525 KbMtpt
Tradução automáticaTraduçã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: 943525  (http://support.microsoft.com/kb/943525/en-us/ )