SQL - ocorreu um erro durante o handshake de pré-login


15

Até ontem à noite, eu era capaz de conectar ao meu servidor a partir da minha máquina local. Agora, recebo o seguinte erro:

Uma conexão foi estabelecida com sucesso com o servidor, mas ocorreu um erro durante o handshake de pré-login. (provedor: provedor SSL, erro: 0 - A operação de espera atingiu o tempo limite.) (provedor de dados .Net SqlClient)

Observe que posso fazer logon no servidor real sem nenhum problema.

Ontem, instalei o IIS na minha máquina e configurei um site usando o meu endereço IP - não sei se isso tem algo a ver.

Encontrei este artigo, segui as etapas, mas não pareceu ajudar.

http://escapekeys.com/microsoft-sql-server-error-64-a-connection-was-successfully-established-with-the-server/89

Também passei pelo artigo a seguir, alterei as configurações de TC / IP, reiniciei, mas nada.

http://blog.sqlauthority.com/2009/05/21/sql-server-fix-error-provider-named-pipes-provider-error-40-could-not-open-a-connection-to-sql- server-microsoft-sql-server-error /

Também comecei a tentar sugestões de comentários, mas parei quando percebi que poderia estar atrapalhando mais as coisas.

Então, por que isso está acontecendo / como posso corrigir?


Que versão do SQL Server é essa? Como você está tentando se conectar à máquina SQL; usando o SQL Server Management Studio ou um aplicativo que você desenvolveu, etc? Você já tentou reiniciar o serviço SQL Server e a máquina servidor?
Max Vernon

O servidor é 2008, meu sql local é 2012. Tentei através de um aplicativo que desenvolvi, além do SSMS. Reiniciei o serviço Sql na minha máquina, mas não reiniciou o servidor real (afetará a produção, também, é apenas um problema com minha conexão SQL local).
Rivka

É uma instância SQL padrão? netstat -aoNesse caso, execute e confirme se a porta 1433 está escutando e se o PID pertence ao sqlservr.exe. Se estiver escutando, verifique se o TCP / IP está ativado para o endereço IP ao qual você está realmente se conectando no SQL Server Configuration Manager (como Max mostrou, mas também abra as propriedades do TCP / IP e verifique se o IP correto está ativado).
22412 Chris McKeown

Observando as propriedades do serviço, minha máquina possui SQLEXPRESS, não 2012. Foi o SSMS que foi 2012 (o que provavelmente não faz diferença?). @ChrisMcKeown - não vejo 1433 listado lá. Além disso, qual deve ser o endereço IP? Meu local? Obrigado pessoal, desculpe por mudar as variáveis ​​aqui.
Rivka

1
Além disso, se você procurar nos logs de erro SQL, também poderá ver em que porta está escutando: 2012-09-04 09: 12: 58.74 Server O servidor está escutando em [127.0.0.1 <ipv4> 64746].
shiitake

Respostas:


5

Na minha situação, eu tinha um filtro / proxy de conteúdo chamado Covenant Eyes que era a causa provável.

Tentei reparar a instalação do SQL Server 2012 e ele travou a instalação e ainda não resolveu o problema. Assim que eu gerasse um código de desinstalação e desinstalasse o filtro, eu poderia conectar; Eu nem precisei reiniciar.

Verifique se há proxies e filtros de conteúdo na máquina e desative-os!


UAU. Isso foi há um tempo atrás, mas nós tínhamos e ainda temos o Covenant Eyes instalado em nossas máquinas.
Rivka 12/03

Vou informá-los do meu problema ... talvez eles estejam usando uma versão antiga do .NET? Aqui é a entrada fórum: gsfn.us/t/3s4ti
Watki02

7

Uma resposta fornecida aqui: http://social.msdn.microsoft.com/Forums/en-US/vssetup/thread/2d11b6f9-3ada-4682-b643-c721a97af4ba

Cansado do problema? Não sei nem me importo com o que é winsock ou com qualquer um desses meios de baixa qualidade.

Vá para um prompt de comando

faça isso

netsh Winsock reset

continue com sua vida e seja feliz.


Note, não resolveu o meu problema ... mas resolveu para vários outros.
Watki02

Obrigado Watki02, suas respostas (redefinição netsh Winsock) me ajudam a resolver esse problema do aplicativo VB.Net clickOnce desenvolvido no VS2010. Sistema operacional Vista com .Net 4.5, para estabelecer conexão remota com o banco de dados do SQL 2005 Express Edition para o SQL 2005 Server.

Graças, ele me ajudou, não sei o que significa embora :)
Ilya Chernomordik

Funciona como um encanto, e tão rápido !!!
Jeff Tian

3

Na minha configuração específica, eu estava usando o armazenamento de dados da sessão em um banco de dados personalizado, também tinha os dados criptografados (Criptografar = Verdadeiro) através da cadeia de conexão, removendo isso corrigido o problema!

Eu suspeito, porém, que os dados não estejam sendo criptografados por SSL como resultado, porém, não há muito problema até que adicionemos mais servidores da web!


1

Fiz uma restauração do sistema e consigo me conectar agora.


0

Abra o SQL Server Configuration Manager e verifique se o serviço SQL Server está em execução:

SQL Server Configuration Manager - Serviços

e configurado para permitir conexões TCP / IP:

SQL Server Configuration Manager - Configuração de rede


Obrigado, tentei isso embora já.
30912 Rivka

0

Este erro ocorreu após a instalação de um programa que altera as configurações de Protocolo da Internet do seu computador. Recentemente, tive o mesmo problema após a instalação do Internet Download Manager, porque o IDM alterou as configurações de IP. Esse erro ocorre, depois de desinstalar o IDM do meu PC e reiniciar o PC, resolver o problema.

Portanto, desinstale qualquer aplicativo que tenha alterado as configurações do Protocolo da Internet, como o Gerenciador de Download da Internet.


0

Às vezes, esse erro ocorre devido à sobrecarga de conexões no SQL Server. Então, basta alterar seu banco de dados para Usuário único e novamente para Multiusuários.

Ou simplesmente execute esta consulta.

use master ALTER DATABASE DatabaseName SET SINGLE_USER WITH ROLLBACK IMEDIATE ALTER DATABASE DatabaseName SET MULTI_USER

Isso resolveu meu problema. :) Desfrutar..!!


0

Nenhuma dessas soluções funcionou para mim. O que funcionou foi o seguinte:

/programming/3270199/a-connection-was-successfully-established-with-the-server-but-then-an-error-occ/44703629#44703629

  • No SQL Server Configuration Manager

  • Selecione Serviços do SQL Server

  • Localize o serviço problemático e visualize Propriedades

  • Na guia Logon, altere a "Conta interna" para "Serviço de rede"

Isenção de responsabilidade: Este arquivo estava no meu PC local, portanto não tive problemas de segurança.


0

Esse problema pode estar relacionado a um firewall no meio que está realizando a inspeção SSL.

Sugiro que você tente novamente usando outra conexão que não esteja realizando inspeção SSL ou peça ao administrador do firewall para criar uma isenção para a origem e / ou destino ao qual você está se conectando,

Felicidades!


0

Eu estava recebendo essa mensagem de erro em cada estação de trabalho tentando conectar-se ao SQL. Todos os computadores estão conectados a um domínio. O que eu fiz para resolver esse problema foi:

1) Crie domian \ user name como um login no SQL Management Studio do usuário que está efetuando login na estação de trabalho. 2) O TLS 1.0 também estava impedindo esse acesso. Transport Layer Security TLS é um protocolo criptográfico usado para estabelecer um canal de comunicação seguro entre dois sistemas. É usado para autenticar um ou ambos os sistemas e proteger a confidencialidade e a integridade das informações que passam entre os sistemas.

No registro dos dois computadores, fomos para \ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ Protocols \ TLS 1.0 \ Server. Trocamos os valores nas duas subchaves.
Após uma reinicialização, testei novamente e consegui estabelecer uma conexão com sucesso.


-2

Tivemos o mesmo problema. Verificamos tudo, incluindo ping, telnet e conectividade RDP e, finalmente, percebemos que isso começou a acontecer depois que nosso ISP mudou a rota. Depois de mudar a rota, começou a funcionar.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.