Niciun proces nu se află la celălalt capăt al țevii (SQL Server 2012) (Programare, Server Sql, Sql Server 2012)

Iter Ator a intrebat.

Am primit această eroare:

A connection was successfully established with the server, but then an error occurred
during the login process. (provider: Shared Memory Provider, error: 0 - No process is
on the other end of the pipe.)

(Microsoft SQL Server, Error: 233)

Știu, există întrebări similare pe acest site, iar răspunsul este, să activezi TCP/IP și pipe. dar le-am activat pe amândouă, și tot nu funcționează:

Folosesc Microsoft SQL Server 2012 și utilizatorul are permisiuni complete.

Comentarii

  • încercați soluțiile lui pinal dave blog.sqlauthority.com/2009/05/21/… –  > Por GeoVIP.
  • La mine a funcționat când m-am reconectat de la autentificarea pe server la autentificarea Windows. –  > Por ganji raajkumar.
  • Ce a funcționat pentru mine (sql express 2016) … Îndepărtarea autentificării mixte lăsând doar windows auth, repornirea serviciului, comutarea din nou la mixed auth, repornirea serviciului. până când am făcut acest lucru nimic nu a rezolvat eroarea No process error – –  > Por Rostol.
  • Pentru ceea ce merită, verificați șirul de conexiune din fișierul de configurare. În cazul meu, cineva modificase unul dintre numele serverului și îl verificase. Codul meu încerca să acceseze o bază de date care nu exista pe serverul meu. –  > Por camainc.
  • nu funcționează nici pentru mine. –  > Por Sam.
17 răspunsuri
Iter Ator

Serverul a fost setat în mod implicit pe Windows Authentication only. Nu există nici o notificare, că originea erorilor este aceea, așa că este greu să ne dăm seama. Studioul de management SQL nu alertează, chiar dacă creați un utilizator doar cu autentificare SQL.

Deci, răspunsul este: Treceți de la Windows la autentificarea SQL.:

  1. Faceți clic dreapta pe numele serverului și selectați properties;
  2. Selectați security fila ;
  3. Activați SQL Server and Windows Authentication mode;
  4. Reporniți serviciul SQL Server.

Acum vă puteți conecta cu numele de utilizator/parola de acces.

Comentarii

  • Opțiunea a fost corect bifată, așa că am bifat „Windows Authentication”, am repornit serviciul, apoi am bifat „Windows Authentication + SQL Authentication” pentru a rezolva problema. Atât de fericit! –  > Por Groco.
  • Pentru a clarifica comentariul lui @Groco: Conectați-vă folosind Windows Authentication >> Faceți clic dreapta pe serverul dvs; Properties >> Security (Sub Select a page) >> Sub Server Authentication selectați SQL Server and Windows Authentication mode. Închideți SQL Server Management Studio, reporniți serviciul SQL Server și încercați să vă conectați din nou. –  > Por Minh Tran.
  • Problema pe care am avut-o a fost următoarea Server Authentication a fost setat la Windows Authentication mode. Și indiferent de introducerea corectă a parolei, am fost întâmpinat întotdeauna cu A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.). Pe parcursul erorii, am reușit să mă conectez folosind Windows Authentication –  > Por Minh Tran.
  • vă mulțumesc foarte mult. reatart the Sql Service mi-a rezolvat problema. –  > Por user1282609.
  • Am încercat să mă loghez folosind „sa” și am primit aceeași eroare. –  > Por RonJohn.
nzchris

Pentru a rezolva acest lucru, conectați-vă la SQL Management Studio utilizând autentificarea Windows, apoi faceți clic dreapta pe nodul server Properties->Security și activați modul SQL Server și Windows Authentication. Dacă folosiți „sa”, asigurați-vă că contul este activat. Pentru a face acest lucru, deschideți ‘sa’ sub Logins și vizualizați Status.

Dacă acest lucru nu a funcționat, este posibil să fie nevoie să reinstalați SQL Server

Comentarii

  • După ce ați făcut acest lucru, reporniți SQL Server. Apoi încercați să vă conectați. –  > Por Webucator.
Fără nume

De asemenea, puteți încerca să mergeți la servicii și să reporniți instanța Sql Server

Comentarii

  • Acest lucru a rezolvat problema mea după ce am încercat toate celelalte remedieri. –  > Por mini998.
  • Uh, nu ar trebui ca acest lucru să vină cu o etichetă mare de avertizare că repornirea serviciului sql server doar pentru că nu vă puteți conecta va strica alte lucruri care s-au conectat cu succes? –  > Por undrline – Reinstaurați-o pe Monica.
  • Acest lucru a funcționat foarte bine pentru mine. Îmi dau seama cât de ușor este pentru oameni să neglijeze luarea în considerare a acestei soluții. –  > Por TehnicTim.
Joe Walters

Deci, am avut acest lucru recent, de asemenea, pentru securitatea integrată, Se pare că problema mea a fost de fapt destul de simplu de rezolvat, dar în principal pentru că am uitat să adaug „Trusted_Connection=True” la șirul meu de conexiune.

Știu că acest lucru poate părea destul de evident, dar m-a pus pe gânduri timp de 20 de minute sau cam așa ceva, până când mi-am dat seama că am copiat formatul șirului meu de conexiune de la connectionstrings.com și că acea porțiune din șirul de conexiune lipsea.

Simplu și mă simt un pic prost, dar a fost răspunsul pentru mine.

Comentarii

  • Am încercat toate comentariile, dar nu a funcționat. Soluția ta a funcționat perfect pentru mine. Vă mulțumesc foarte mult. –  > Por Royal.O.
  • acesta a fost ultimul lucru pe care l-am încercat după toate celelalte chestii de verificare a activării tcp, adăugarea autentificării în mod mixt și repornirea serviciului de browser sql și a funcționat. mulțumesc – –  > Por Myke Black.
Mohammad Dehghan

Un alt motiv pentru această eroare ar putea fi numele bazei de date incorect sau inexistent.

Forțarea conexiunii TCP/IP (prin furnizarea de 127.0.0.1 în loc de localhost sau .) poate dezvălui motivul real al erorii. În cazul meu, numele bazei de date specificat în șirul de conexiune era incorect.

Așadar, iată lista de verificare:

  • Asigurați-vă că Țeava numită este activat în managerul de configurare (nu uitați să reporniți serverul).
  • Asigurați-vă că baza de date la care vă conectați există.
  • Asigurați-vă că Autentificarea SQL Server (sau Mixed Mode) este activată.

Comentarii

  • Ce s-a întâmplat cu managerul de configurare în express 2016? Nu-l văd disponibil? Oh, trebuie să execut SQLServerManager13.msc acum –  > Por Kirsten Greed.
  • Când am schimbat la 127.0.0.0.1 am primit mesajul de eroare Message=A network-related or instance-specific error occurred while establishing a connection to SQL Server. Serverul nu a fost găsit sau nu a fost accesibil. Verificați dacă numele instanței este corect și dacă SQL Server este configurat pentru a permite conexiuni la distanță. (furnizor: SQL Network Interfaces, error: 26 – Error Locating Server/Instance Specified) Source=Core .Net SqlClient Data Provider –  > Por Kirsten Greed.
  • @kirsteng Verificați instanțele SQL Server instalate. Ați instalat o instanță implicită (MSSQLSERVER)? –  > Por Mohammad Dehghan.
  • Autentificarea SQL Server în modul mixt a făcut-o pentru mine. Băieți, dacă faceți o nouă instalare a SQL Server Express, atunci când doriți să adăugați un utilizator pentru nevoile de programare, trebuie să schimbați modul mixt, altfel va fi disponibilă doar autentificarea Windows. –  > Por Eduardo.
  • Acest lucru a funcționat (oarecum). După ce am schimbat nonsensul localdb în 127.0.0.1, a reușit să treacă. –  > Por Eric.
Muhammad Bilal

Vă rugăm să verificați și acest lucru De asemenea, verificați în configurația TCP/IP,Names PipeLine și memoria partajată activată

gotorg

Dacă încercați să vă conectați cu acreditările SQL, puteți încerca, de asemenea, să modificați LoginMode pentru SQL Server în registru pentru a permite atât autentificarea SQL Server, cât și autentificarea Windows.

  1. Deschideți regedit
  2. Accesați cheia instanței SQL (poate varia în funcție de numele instanței dvs.):ComputerHKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft SQL ServerMSSQL14.SQLEXPRESSMSSQLServer
  3. Setați LoginMode la 2

  1. Reporniți serviciul SQL și SQL Server Management Studio și încercați din nou.

Comentarii

  • acesta este cel mai potrivit răspuns. –  > Por sushh.
  • A funcționat ca prin minune! –  > Por Asim.
Groco

Mă confrunt cu această problemă pentru a doua oară și toate răspunsurile anterioare au eșuat, din fericire următoarea cerere face treaba:

Alter login [user] with CHECK_POLICY = OFF
go

Alter login [user] with CHECK_POLICY = ON
go

Bence Végert

Pentru mine parola a expirat pentru utilizatorul meu de conectare și am primit aceeași excepție. apoi m-am conectat cu modul de autentificare Windows și am schimbat parola pentru utilizatorul asociat și mi-a rezolvat problema.

Comentarii

  • mi-ați salvat ziua!!! –  > Por învățăcel.
Anssssss

Da, această eroare ar putea la fel de bine să fie „ceva a eșuat, mult noroc să vă dați seama ce” – În cazul meu a fost un nume de utilizator greșit. SQL Server 2019 RC1.

Stefan

Am avut și eu această eroare, cauza a fost simplă, dar nu evidentă: parolă incorectă. Nu știu sigur de ce nu am primit doar „Login failed” de pe serverul SQL 2016 proaspăt instalat.

Doan bien

Am aceeași proplemă „A fost stabilită cu succes o conexiune cu serverul, dar apoi a apărut o eroare în timpul procesului de autentificare. (furnizor: Shared Memory Provider, eroare: 0 – Nu există niciun proces la celălalt capăt al țevii.)”

Conexiunea mea este:

server=POS06SQLEXPRESS; AttachDbFilename=C:…Datas.mdf;Initial Catalog= Datas; User ID= sa; Pwd=12345; Connect Timeout=10;

Dar SQL-ul meu este POS06MSQL2014

Schimbați șirul de conexiune în

server=POS06MSQL2014 ; AttachDbFilename=C:…Datas.mdf;Initial Catalog= Datas; User ID= sa; Pwd=12345; Connect Timeout=10;

a funcționat.

CyberDude

Încercați întotdeauna să vă conectați folosind aceste credențiale cu SQL Management Studio. Acest lucru ar putea dezvălui mai multe detalii pe care nu le obțineți în timpul execuției în codul dvs. am verificat autentificarea SQL + Windows, am repornit serverul, dar tot nu am avut noroc. după ce am încercat să mă conectez folosind SQL Management, am primit acest prompt:

Cumva parola a expirat, deși autentificarea a fost creată cu doar câteva minute înainte. Oricum, am setat o nouă parolă, am actualizat șirul de conexiune și totul este în regulă.

elkoo

asigurați-vă că ați specificat utilizatorul în Security-> Logins, dacă nu – adăugați-l și încercați din nou.

cschaefer

Urmați celălalt răspuns și, dacă tot nu funcționează, reporniți computerul pentru a reporni efectiv serviciul SQL Server pe Windows.

Comentarii

  • De asemenea, de obicei, puteți reporni serviciul SQL pentru baza de date specifică, localizându-l în services.msc –  > Por Zimano.
Baga

În cazul meu, baza de date a fost restaurată și avea deja utilizatorul folosit pentru conexiune. A trebuit să renunț la utilizatorul din baza de date și să recreez user-mapping-ul pentru conectare.

  1. Aruncați utilizatorul

    DROP USER [MyUser]
    

S-ar putea să nu reușească dacă utilizatorul este proprietarul unor scheme. Acestea trebuie să fie atribuite la dbo înainte de a renunța la utilizator. Obțineți schemele deținute de utilizator folosind prima interogare de mai jos și apoi modificați proprietarul acestor scheme folosind a doua interogare (HangFire este schema obținută din interogarea anterioară).

select * from information_schema.schemata where schema_owner = 'MyUser'
ALTER AUTHORIZATION ON SCHEMA::[HangFire] TO [dbo]     
  1. Actualizați cartografierea utilizatorului pentru utilizator. În Management Studio, accesați Security-> Login -> Deschideți utilizatorul -> Accesați fila User Mapping -> Activați baza de date și acordați rolul corespunzător.

Ricardo D. Ferrancullo III

În cazul meu: Atribuiți utilizatorului un rol de administrator de sistem.

  1. Conectați-vă ca utilizator autentificat de Windows
  2. Mergeți la: Securitate->Autentificare->Faceți clic dreapta pe utilizator->Atribuiți rolul de server ca sysadmin

Comentarii

  • Vorbim despre o „abordare cu barosul” – acest lucru este periculos și nici măcar nu ar trebui să fie luat în considerare ca soluție. –  > Por Rab.