Quando o SQL Server não consegue iniciar em um computador com Windows, um erro comum exibido é a mensagem: "O Windows não pôde iniciar o SQL Server no computador local." Esse problema pode ocorrer por diversos motivos e é frequentemente acompanhado de um código de erro específico, como o erro 3417. Aqui estão algumas abordagens para resolver esse problema e garantir que o SQL Server seja iniciado corretamente.
1. Alterar o Tipo de Logon
Muitas vezes, a solução mais simples é alterar o tipo de logon para Conta do Sistema Local. Isso ajuda a garantir que o SQL Server tenha permissões adequadas para iniciar corretamente. Para fazer isso:
- Abra o Executar (pressione Win + R), digite
Services.msc
e pressione Enter. - No Serviços, localize o SQL Server (o nome da instância ou banco de dados), clique com o botão direito e selecione Propriedades.
- Vá até a guia Logon, selecione Conta do Sistema Local e clique em Aplicar > OK.
- Tente reiniciar o serviço e conecte-se ao banco de dados novamente. Isso pode corrigir o problema.
2. Verificar as Dependências do Serviço
O SQL Server pode depender de outros serviços para funcionar corretamente. Se esses serviços não estiverem em execução, o SQL Server não conseguirá iniciar. Para verificar as dependências:
- Novamente, abra Services.msc.
- Clique com o botão direito sobre o SQL Server e selecione Propriedades.
- Vá até a guia Dependências para visualizar os serviços necessários, como WMI (Instrumentação de Gerenciamento do Windows), RPC e o Navegador do SQL Server.
- Verifique se todos esses serviços estão em execução. Caso contrário, inicie-os manualmente e tente reiniciar o SQL Server.
3. Criar a Entrada de Registro ServicesPipeTimeout
O erro 1053, que está relacionado a um serviço que não responde no tempo esperado, pode ser resolvido criando uma entrada de registro chamada ServicesPipeTimeout. Isso aumenta o tempo de espera do Gerenciador de Controle de Serviços para aguardar o início do SQL Server.
- Faça um backup do registro.
- Abra o Editor do Registro e navegue até
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
. - Crie um novo Valor DWORD (32 bits) e nomeie-o como
ServicesPipeTimeout
. - Defina o valor como 180000 (que é 180 segundos) e clique em OK.
- Reinicie o computador e tente iniciar o SQL Server novamente.
4. Configurar o Computador para Não Recuperar CTLs Confiáveis e Não Confiáveis
O SQL Server Reporting Services pode não ser iniciado corretamente se não conseguir acessar as listas de certificados do Windows Update. Isso pode ocorrer devido a problemas de rede, como a falta de conexão com a internet ou um firewall bloqueando o Windows Update.
Para corrigir isso, siga os passos abaixo:
- Se você estiver usando o Editor de Diretiva de Grupo, vá para:
Configuração do Computador > Políticas > Configurações do Windows > Configurações de Segurança > Políticas de Chave Pública > Configurações de Validação de Caminho de Certificado
. - Selecione a guia Recuperação de Rede e desmarque a opção Atualizar certificados automaticamente no Programa de Certificado Raiz da Microsoft.
- Para usuários do Windows Home, abra o Editor do Registro e vá para
HKLM\Software\Policies\Microsoft\SystemCertificates\AuthRoot
. - Crie um DWORD chamado
DisableRootAutoUpdate
e defina o valor como 1.
Essa configuração impede que o sistema tente recuperar os certificados automaticamente, o que pode resolver o problema de tempo limite.
5. Iniciar o SQL Server Localmente
Se o SQL Server não for iniciado automaticamente, você pode iniciá-lo manualmente. Para isso, basta abrir o Menu Iniciar, pesquisar por Serviços, localizar o SQL Server, clicar com o botão direito e selecionar Iniciar.
Se o SQL Server não iniciar corretamente, você pode experimentar várias abordagens, como alterar o tipo de logon, verificar as dependências do serviço ou ajustar as configurações de registro. Essas soluções visam resolver problemas comuns, como erro 3417 ou erro 1053, e garantir que o serviço SQL Server seja iniciado e funcione corretamente. Certifique-se de seguir os passos mencionados cuidadosamente para corrigir o problema de conexão ao banco de dados.