Rezolvarea problemelor de conexiune cu serverul sql 2018

Identificarea cauzelor erorilor de conectare

Majoritatea problemelor la conectarea la SQL Server sunt rezultatul unor probleme legate de TCP / IP, autentificarea Windows sau o combinație a acestora.







IMPORTANT: Înainte de a începe să căutați cauza problemei conectării la SQL Server, asigurați-vă că a pornit serviciul MSSQLServer.

Verificarea setărilor DNS

Faceți clic pe butonul "Start", apoi selectați "Run ..."

În dialogul care apare, introduceți cmd și faceți clic pe OK.

În linia de comandă, tastați și executați următoarea comandă

ping -a

De asemenea, puteți evita această problemă utilizând pipe-uri numite pentru a vă conecta la serverul bibliotecii de rețea. De asemenea, puteți evita această problemă utilizând biblioteca de rețea a conductelor numite pentru a vă conecta la server.

Verificarea protocoalelor și aliaselor

Problemele de conectare pot apărea din cauza setării incorecte a aliaselor pe client. Pentru a verifica acest lucru, trebuie să efectuați următorii pași:

Porniți Utilitarul pentru rețeaua de clienți. Dacă utilitarul client SQL Server este instalat pe computerul în care se execută aplicația client, puteți porni utilitarul Network Client Utility după cum urmează:

Faceți clic pe butonul "Start", apoi selectați elementul de meniu "Programe"

Selectați partiția Microsoft SQL Server și apoi porniți utilitarul Network Client Utility din submeniu.

Dacă utilitarul client SQL Server nu este instalat pe computerul în care se execută aplicația client, utilitarul Network Client Utility pornește după cum urmează:

Apăsați butonul (Start), apoi selectați elementul de meniu "Run ..." (Run)

În dialogul care apare, executați comanda cliconfg și faceți clic pe OK.

În fereastra Utilitar de rețea SQL Server Client, accesați fila General și selectați toate protocoalele pe care doriți să le utilizați.
Notă: din listă trebuie să selectați protocoalele TCP / IP și conductele numite.

Faceți clic pe fila Alias ​​și asigurați-vă că ați creat un alias pentru SQL Server.

Important: Versiunile anterioare ale componentelor Microsoft Data Access Components (MDAC) utilizează o interfață de utilizator diferită pentru utilitarul Network Client Utility. Prin urmare, dacă interfața Client Network Utility nu conține elementele descrise mai sus, trebuie să instalați cea mai recentă versiune de MDAC pe computerul în care rulează aplicația client.

Verificarea portului de ascultare al unei instanțe SQL Server

Dacă nu vă puteți conecta la un server SQL utilizând TCP / IP, încercați să faceți acest lucru utilizând conductele numite sau memoria partajată. Rulați următoarea comandă pentru a determina care porturi sunt deja în uz:

Depanarea MDAC

Notă: dacă vă conectați la o instanță numită de SQL Server, asigurați-vă că aveți MDAC versiunea 2.6 sau o versiune superioară instalată. Versiunile anterioare ale MDAC nu acceptă conexiunea cu instanțe numite de SQL Server.

Rezolvarea problemelor asociate cu utilizarea firewall-urilor

287932 INF: Porturile TCP necesare pentru comunicarea cu SQL Server printr-un firewall (porturile TCP necesare pentru conectarea la SQL Server).
269882 HOWTO: Utilizați ADO pentru a vă conecta la un server SQL care se află în spatele unui paravan de protecție (folosind ADO pentru a vă conecta la SQL Server printr-un firewall).

Dacă se utilizează TCP / IP pentru conectarea la SQL Server, asigurați-vă că vă puteți conecta folosind programul Telnet la portul pe care asculta SQL Server. Pentru a face acest lucru, trebuie să faceți următoarele din linia de comandă:

Telnet

Dacă primiți o eroare în timpul conectării volumului Telnet, luați măsuri pentru a elimina cauzele apariției acesteia și încercați să vă conectați din nou.

Important: Portul 1434 al Datagram Protocol (UDP) poate fi blocat pentru a proteja împotriva penetrării virusului Slammer.

Depanarea problemelor legate de autentificare și securitate

Conectarea la serverul SQL poate eșua din cauza faptului că procesul de autentificare a fost completat cu o eroare și puteți obține următoarele mesaje de eroare:

Problemele cu autentificarea și securitatea pot fi cauzate de următoarele motive:







Probleme cu autentificarea NTLM sau Kerberos.

Controlerul de domeniu nu este disponibil din cauza erorilor de conectare.

Problema cu relațiile de încredere din domeniu.

Când conectați utilizând autentificarea SQL Server, este posibil să primiți următoarea eroare:

Pentru a rezolva această problemă, trebuie să faceți următoarele:

Asigurați-vă că instanța serverului SQL utilizează autentificare mixtă: Windows și SQL Server. Pentru aceasta, trebuie să verificați următoarele chei de registry de pe computerul în care rulează SQL Server:

Pentru instanța implicită:
HKEY_LOCAL_MACHINE \ Software \ Microsoft \ MSSQLServer \ MSSQLServer \ LoginMode

Pentru o instanță numită:
HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Microsoft SQL Server \\ MSSQLServer \ LoginMode

Rețineți: după modificarea registrului, trebuie să reporniți SQL Server pentru ca modificările să aibă efect.

Încercați să vă conectați la SQL Server utilizând diferite conturi Windows și SQL Server. Acest lucru vă va ajuta să vă asigurați că o eroare de conectare apare numai atunci când utilizați un anumit cont, de exemplu, din cauza unei modificări a parolei.

Încercați să vă conectați la SQL Server utilizând diferite protocoale. De exemplu, dacă vă conectați prin autentificarea TCP / IP și Windows, este posibil ca conexiunea să nu funcționeze și conectarea prin conducte numite utilizând autentificarea Windows poate fi terminată cu succes.

Depanarea problemelor de congestie a soclurilor TCP / IP

Când utilizați driverul ODBC pentru SQL Server sau Microsoft OLE DB Provider pentru SQL Server și furnizor de System.Data.SqlClient Managed, aveți posibilitatea de a dezactiva, prin intermediul API-ul de conectare la pool. Dacă îl dezactivați și aplicația dvs. creează și închide adesea conexiuni, încărcarea din bibliotecile de rețea de la nivelul inferior poate crește. Uneori, serverele Web și driverele JDBC pot încerca, de asemenea, să se conecteze la SQL Server. Astfel, creșterea numărului de solicitări de conectare la SQL Server poate deveni mai mult decât serviciul SQL Server. Aceasta crește încărcarea pe prizele TCP / IP și puteți obține următorul mesaj de eroare în jurnalul serverului SQL:

Pentru mai multe informații, citiți următoarele articole:
154628 INF: Jurnale SQL 17832 cu multiple solicitări de conectare TCP \ IP.
328476 Setările TCP / IP pentru driverele SQL Server când activarea de grupuri este dezactivată.

Asigurați-vă că serverul SQL nu rulează în modul pentru un singur utilizator

Dacă SQL Server rulează într-un singur mod de utilizator, se poate stabili o singură conexiune cu acesta. Dacă aveți un software instalat pe computerul dvs. care se conectează automat la serverul SQL, acest software poate utiliza această singură conexiune permisă în modul pentru un singur utilizator.
Exemple de programe care se conectează automat la un server SQL sunt:

Agent SQL Server

Software de backup terț

Software terț pentru monitorizare

Antivirusuri terțe

Microsoft Internet Information Services (IIS)

SQL Server Enterprise Manager

Aplicația client primește următoarea eroare atunci când încearcă să se conecteze la SQL Server:

Verificarea conexiunii la SQL Server prin conducte numite

Dacă nu vă puteți conecta la SQL Server folosind conducte numite, verificați ca SQL Server să configureze utilizarea pipe-urilor numite. Pentru mai multe informații despre cum să testați o conexiune prin conducte numite, citiți articolul următor: 68941 INF: Procedura de testare a conductelor numite.

Rezolvarea problemelor de conectare în timpul procesului de regenerare

De fiecare dată când SQL Server pornește, începe procesul de recuperare / regenerare pentru toate bazele de date. Esența acestui proces este să se rostogolească înapoi tranzacții incomplete și se înregistrează modificările efectuate de tranzacții care au fost finalizate, dar care nu au fost scrise pe disc la momentul opririle SQL Server. După terminarea procesului de reorganizare, se face următoarea intrare în jurnalul SQL Server:

În momentul procesului de reorganizare, nu vă puteți conecta la serverul SQL. Clienții care încearcă să se conecteze la SQL Server în acest moment pot obține următoarea eroare:

Serviciul SQL Server Agent nu pornește înainte ca SQL Server să finalizeze procesul de regenerare. Astfel, dacă procesul de regenerare durează prea mult timp, ar trebui să vă gândiți cum să rezolvați problema unei astfel de regenerări pe termen lung a bazelor de date.

Testarea diferitelor moduri de conectare la o instanță a serverului SQL

Dacă aveți probleme la conectarea la SQL Server, puteți utiliza una dintre următoarele metode pentru a determina cauza acestei probleme:

Încercați să vă conectați utilizând o altă sursă de date, cum ar fi ODBC DSN, un fișier .udl. Sau folosind un alt program: SQL Query Analyzer, SQL Server Enterprise Manager, utilitar isql sau osql.

Verificați capacitatea de a vă conecta la serverul SQL folosind protocoale diferite. Pentru a face acest lucru, puteți crea un alias pentru server și puteți defini un protocol pentru acesta. De asemenea, puteți specifica protocolul în șirul de conexiuni prin adăugarea tcp în fața numelui serverului. np. LPC. sau rpc. Aceasta înseamnă că, dacă conexiunea prin tcp / ip se termină cu o eroare, puteți încerca să vă conectați prin conducte numite.

Verificați conectivitatea utilizând conturi diferite. Acest lucru vă va ajuta dacă problema este legată de conectarea la un anumit cont.

Încercați să vă conectați la serverul SQL de pe computerul în care se execută și apoi de pe computerul client.

Când vă conectați de pe un computer care execută SQL Server, puteți utiliza "." În loc de numele serverului complet. sau "(local)" (fără ghilimele).

Încercați să determinați manual numele portului pe care asculta SQL Server creând un alias sau într-un șir de conexiune (de exemplu, MyServer \ MyInstance, 1433).

Pentru informații mai detaliate, puteți utiliza SQL Profiler, precum și Instrumentul de diagnosticare a rețelei, dacă computerul care execută SQL Server nu este unul dintre nodurile de cluster. Pentru informații despre modul de utilizare a Instrumentului de diagnosticare a rețelei, consultați următorul articol:







Articole similare

Trimiteți-le prietenilor: