SQL: si è verificato un errore durante l'handshake pre-login


15

Fino a ieri sera, sono stato in grado di connettermi al mio server dal mio computer locale. Ora ricevo il seguente errore:

È stata stabilita una connessione con il server, ma si è verificato un errore durante l'handshake pre-login. (provider: provider SSL, errore: 0 - Timeout dell'operazione di attesa.) (.Net SqlClient Data Provider)

Nota, posso accedere al server effettivo senza problemi.

Ieri ho installato IIS sul mio computer e impostato un sito utilizzando il mio indirizzo IP: non so se questo ha qualcosa da fare.

Mi sono imbattuto in questo articolo, ho seguito i passaggi, ma non sembra essere d'aiuto.

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

Ho anche esaminato l'articolo seguente, modificato le impostazioni TC / IP, riavviato, ma nulla.

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 /

Ho iniziato a provare suggerimenti anche dai commenti, ma mi sono fermato quando mi sono reso conto che avrei potuto rovinare di più le cose.

Quindi, perché sta succedendo / come posso risolvere?


Quale versione di SQL Server è questa? Come si sta tentando di connettersi alla macchina SQL; utilizzando SQL Server Management Studio o un'app sviluppata, ecc.? Hai provato a riavviare il servizio SQL Server e il server?
Max Vernon,

Il server è il 2008, il mio sql locale è il 2012. L'ho provato attraverso un'app che ho sviluppato, oltre a SSMS. Ho riavviato il servizio SQL sulla mia macchina, ma non ho riavviato il server effettivo (influenzerà anche la produzione, è solo un problema con la mia connessione SQL locale).
Rivka,

È un'istanza SQL predefinita? In tal caso, eseguire netstat -aoe confermare che la porta 1433 è in ascolto e che il PID appartiene a sqlservr.exe. Se è in ascolto, controlla che TCP / IP sia abilitato per l'indirizzo IP a cui ti stai effettivamente connettendo in Gestione configurazione SQL Server (come ha mostrato Max, ma apri anche le proprietà di TCP / IP e assicurati che l'IP corretto è abilitato).
Chris McKeown,

Guardando le proprietà del servizio, la mia macchina ha SQLEXPRESS, non il 2012. Era SSMS che era il 2012 (che probabilmente non fa differenza?). @ChrisMcKeown - non vedi 1433 elencati lì. Inoltre, quale dovrebbe essere l'indirizzo IP? Il mio locale? Grazie ragazzi, scusate per aver cambiato qui le variabili.
Rivka,

1
Inoltre, se si visualizzano i log degli errori SQL, è possibile verificare anche su quale porta è in ascolto: 2012-09-04 09: 12: 58.74 Server Il server è in ascolto su [127.0.0.1 <ipv4> 64746].
shiitake,

Risposte:


5

Nella mia situazione, avevo un filtro / proxy di contenuto chiamato Covenant Eyes che era la causa probabile.

Ho provato a riparare l'installazione di SQL Server 2012 e si è arrestato in modo anomalo durante l'installazione e non ho ancora risolto il problema. Non appena ho generato un codice di disinstallazione e disinstallato il filtro, ho potuto connettermi; Non ho nemmeno dovuto riavviare.

Verifica la presenza di proxy e filtri di contenuto sulla macchina e disabilitali!


WOW. Questo era un po 'di tempo fa, ma abbiamo fatto e abbiamo ancora Covenant Eyes installato sulle nostre macchine.
Rivka,

Farò sapere loro del mio problema ... forse stanno usando una vecchia versione di .NET? Ecco la voce del forum: gsfn.us/t/3s4ti
Watki02

7

Una risposta proposta qui: http://social.msdn.microsoft.com/Forums/en-US/vssetup/thread/2d11b6f9-3ada-4682-b643-c721a97af4ba

Stufo del problema? Non sapete né preoccupatevi di cosa sia Winsock o uno di questi mezzi di merda di basso livello.

Vai a un prompt dei comandi

Fai questo

netsh Winsock reset

vai avanti con la tua vita e sii felice.


Nota, non ha risolto il mio problema ... ma lo ha fatto per molti altri.
Watki02

Grazie Watki02, le tue risposte (netsh Winsock reset) mi aiutano a risolvere questo problema per lo sviluppo dell'applicazione clickOnce VB.Net in VS2010. Sistema operativo Vista con .Net 4.5, per stabilire una connessione DB remota da SQL 2005 Express Edition a SQL 2005 Server.

Grazie, mi ha aiutato, non so cosa significhi però :)
Ilya Chernomordik,

Funziona come un fascino e così in fretta !!!
Jeff Tian,

3

Nella mia configurazione particolare, stavo usando l'archiviazione dei dati di sessione in un database personalizzato, avevo anche i dati crittografati (Encrypt = True) tramite la stringa di connessione, rimuovendo questo risolto il problema!

Tuttavia, sospetto che i dati non vengano crittografati con SSL, di conseguenza, non è un grosso problema fino a quando non aggiungeremo altri server Web!


1

Ho eseguito un ripristino del sistema e ora riesco a connettermi.


0

Apri Gestione configurazione SQL Server e assicurati che il servizio SQL Server sia in esecuzione:

Gestione configurazione SQL Server - Servizi

e configurato per consentire connessioni TCP / IP:

Gestione configurazione SQL Server: configurazione di rete


Grazie, ci ho già provato.
Rivka,

0

Questo errore si è verificato dopo l'installazione di un programma che modifica le impostazioni del protocollo Internet del computer. Recentemente ho avuto lo stesso problema dopo l'installazione di Internet Download Manager perché IDM ha modificato le impostazioni IP che l'errore si presenta quindi dopo aver disinstallato IDM dal mio PC e aver riavviato il PC per risolvere il problema.

Quindi disinstallare qualsiasi applicazione che ha modificato le impostazioni del Protocollo Internet come Gestione download Internet.


0

A volte questo errore è dovuto al sovraccarico di connessioni su SQL Server. Quindi basta cambiare il tuo DB in Single User e cambiarlo di nuovo in Multi user.

O semplicemente eseguire questa query.

usa master ALAT DATABASE DatabaseName SET SINGLE_USER CON ROLLBACK IMMEDIATO ALTER DATABASE DatabaseName SET MULTI_USER

Ciò ha risolto il mio problema. :) Godere..!!


0

Nessuna di queste soluzioni ha funzionato per me. Ciò che ha funzionato è stato il seguente:

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

  • In Gestione configurazione SQL Server

  • Seleziona SQL Server Services

  • Individua il servizio problematico e visualizza Proprietà

  • Nella scheda Accesso, modifica "Account integrato" in "Servizio di rete"

Disclaimer: questo era sul mio PC di sviluppo locale, quindi non avevo problemi di sicurezza nel farlo.


0

Questo problema può essere correlato a un firewall nel mezzo che sta eseguendo l'ispezione SSL.

Ti suggerisco di riprovare a utilizzare un'altra connessione che non esegue l'ispezione SSL o di chiedere all'amministratore del firewall di creare un'esenzione per l'origine e / o la destinazione a cui ti stai connettendo,

Saluti!


0

Stavo ricevendo questo messaggio di errore su ogni workstation che tentava di connettersi a SQL. Tutti i computer sono connessi a un dominio. Quello che ho fatto per risolvere questo problema è stato:

1) Creare domian \ nome utente come login in SQL Management Studio dell'utente che accede alla workstation. 2) TLS 1.0 stava anche impedendo questo accesso. Transport Layer Security TLS è un protocollo crittografico utilizzato per stabilire un canale di comunicazione sicuro tra due sistemi. Viene utilizzato per autenticare uno o entrambi i sistemi e proteggere la riservatezza e l'integrità delle informazioni che passano tra i sistemi.

Nel registro di entrambi i computer siamo andati a \ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ Protocols \ TLS 1.0 \ Server. Scambiamo i valori nelle due sottochiavi.
Dopo un riavvio, ho eseguito nuovamente il test ed è stato in grado di stabilire correttamente una connessione.


-2

Abbiamo avuto lo stesso problema. Abbiamo controllato tutto, incluso il ping, la connettività telnet e RDP e alla fine ci siamo resi conto che è iniziato dopo che il nostro ISP ha cambiato rotta. Dopo aver cambiato il percorso ha iniziato a funzionare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.