Un nivel de transport de eroare a avut loc atunci când a primit rezultatele de la server

Am'm obtinerea unei erori SQL Server:

O transport-nivelul de eroare a avut loc atunci când a primit rezultatele de la server. (furnizor: Memorie Partajată Furnizor de eroare: 0 - manerul este invalid.)

Am'm execută Sql Server 2008 SP1, Windows 2008 Standard pe 64 de biți.

L's a .Net 4.0 aplicație web. Aceasta se întâmplă atunci când se face o cerere la server. L's intermitentă. Vreo idee cum pot rezolva asta?

Comentarii la întrebare (21)

Conexiunea de date este închisă de către serverul de baze de date. Conexiunea rămâne valabilă în piscina conexiune de aplicație; ca urmare, atunci când pickup comună șir de conexiune și să încerce să-l execute'nu e capabil să ajungă la baza de date. Dacă sunteți în curs de dezvoltare Visual Studio, pur și simplu închideți temporar serverul de web de pe bara de sarcini.

Dacă se întâmplă în producție, resetarea aplicarea piscina pentru site-ul dvs. ar trebui să recicleze conexiune la piscină.

Comentarii (2)

Încercați următoarea comandă la promptul de comandă:

netsh interface tcp set global autotuning=disabled

Acest lucru se stinge automat de scalare abilități de stiva de rețea

Comentarii (7)

Am avut aceeași problemă. Am repornit Visual Studio și că a rezolvat problema

Comentarii (0)

Pentru cei care nu folosesc IIS, am avut această problemă, atunci când depanare cu Visual Studio 2010. Am încheiat toate debugger procese: WebDev.WebServer40.EXE care a rezolvat problema.

Comentarii (2)

Tot ce ai nevoie este de a Opri ASP.NET Server de Dezvoltare și a alerga din nou proiectul

Comentarii (0)

Transport la nivel de erori sunt adesea legate de conectarea la sql server fiind rupt ... de obicei rețea.

De expirare a Expirat, de obicei, este aruncat atunci când o interogare sql nevoie de prea mult timp pentru a rula.

Atât de puține opțiuni pot fi :

  1. Verificați conexiunea VPN (dacă este cazul) sau orice alt instrument
  2. Reporniți IIS
  3. Reporniți aparatul
  4. Optimiza interogări sql.
Comentarii (1)

Uita-te la MSDN blog, care detalii despre aceasta eroare:

Eliminarea Conexiuni

conexiune pooler elimină o conexiune la piscină după ce a a fost inactiv pentru o lungă perioadă de timp, sau dacă detectează că pooler conexiune cu serverul a fost întreruptă.

Rețineți că retezat conexiune poate fi detectat doar după încercarea de pentru a comunica cu serverul. Dacă o conexiune este a constatat că nu este mai conectat la server, acesta este marcat ca invalid.

conexiunile Incorecte sunt eliminate din piscina conexiune doar atunci când acestea sunt închise sau regenerate.

Dacă există o conexiune la un server care a dispărut, această conexiune pot fi trase din piscina chiar dacă conexiunea pooler nu a detectat retezat conexiune și marcat ca invalid.

Acesta este cazul, deoarece aeriene de verificare conexiune nu este încă valabil-ar elimina beneficiile de a avea un pooler de provocând o altă rundă excursie la server să apară.

Când se întâmplă acest lucru, prima încercare de a utiliza conexiunea va detecta că conexiunea a fost întreruptă, și o excepție este aruncată.

Practic, ceea ce vedem este că excepție în ultima propoziție.

O conexiune este luat de la piscina conexiune, cererea nu nu stiu care conexiunea fizică este plecat, o încercare de a o folosi este făcut în ipoteza că conexiunea fizică este încă acolo.

Și veți obține dvs. de excepție.

Există câteva motive comune pentru acest lucru.

  1. Serverul a fost repornit, acesta va închide conexiunile existente.

În acest caz, uita-te la jurnal SQL Server, de obicei găsite la: C:\Program Files\Microsoft SQL Server\<instanță>\MSSQL\LOG

Dacă amprenta de timp pentru pornire este foarte recente, atunci putem bănui că aceasta este ceea ce a cauzat eroarea. Încercați să coreleze acest timestamp cu timpul de excepție.

2009-04-16 11:32:15.62 Logare Server SQL Server mesaje în fișiere 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\EROARE'.

  1. Cineva sau ceva l-a ucis pe SPID care este utilizat.

din Nou, să ia o privire în jurnalul de SQL Server. Dacă găsiți o omoare, încercați să corela acest timestamp cu timpul de excepție.

2009-04-16 11:34:09.57 spidXX ID-ul de Proces XX a fost ucis de hostname xxxxx, host process ID XXXX.

  1. Există un failover (într-o oglindă de configurare, de exemplu), din nou, să ia o privire în jurnalul de SQL Server.

Dacă există un caz de nereușită, să încerce să coreleze acest timestamp cu timpul de excepție.

2009-04-16 11:35:12.93 spidXX oglindă baza de date "<ta de date>" se schimbă rolurile din "PRINCIPAL" la "OGLINDA" din cauza în caz de Nereușită.

Comentarii (0)

Dacă sunteți conectat la baza de date prin intermediul Microsoft SQL Server Management, închide toate conexiunile și încercați din nou. A avut această eroare atunci când este conectat la un alt Azure baza de Date, și a lucrat pentru mine, atunci când a închis-o. Încă nu't știu de ce ..

Comentarii (1)

A fost obtinerea de acest lucru, întotdeauna după aproximativ 5 minute de funcționare. Investigat și a constatat că o avertizare de la e1iexpress mereu au avut loc înainte de eșec. Acest lucru se pare că este o eroare a avea de a face cu anumite TCP/IP, adaptoare. Dar trecerea de la WiFi la cablate n't afecta.

Așa că a încercat Plan B și repornit Visual Studio. Apoi a mers bine.

La un studiu mai atent am observat că, atunci când funcționează corect, mesajul ata '' a ieșit cu codul 0` a avut loc la aproape exact la timp fugă s-a prăbușit în încercările anterioare. Unele Googling arată că acest mesaj apare când (printre alte lucruri) serverul este tunderea thread pool.

Probabil că a fost un fals fir în fir de piscină și de fiecare dată când serverul a încercat să "tapiterie" l-a luat aplicația jos.

Comentarii (0)

Primiți acest mesaj atunci când script-ul dvs. de a face SQL Service oprit pentru câteva motive. așa că, dacă veți începe SQL Service din nou, probabil, problema va fi rezolvată.

Comentarii (1)

Știu că acest lucru nu poate ajuta la toata lumea (cine știe, poate că da), dar am avut aceeași problemă și, după un timp, ne-am dat seama că a fost ceva ieșit din cod în sine.

Computer încercarea de a ajunge la server, a fost într-o altă rețea, legătură ar putea fi stabilit, dar apoi a scăzut.

Modul în care ne folosit pentru a repara, a fost pentru a adăuga o rută statică pe computer, care permite accesul direct la server, fără a trece prin firewall.

route add –p YourServerNetwork mask NetworkMask Router 

Eșantion:

route add –p 172.16.12.0 mask 255.255.255.0 192.168.11.2 

Sper sa ajute pe cineva, l'e mai bine să ai, cel puțin ca un indiciu, așa că dacă vă confruntați cu ea, știi cum să o rezolve.

Comentarii (0)

Am si eu aceeasi eroare în Visual Studitul 2012 mediu de dezvoltare, s-a oprit IIS Express și rulați din nou aplicația, acesta a început să lucreze.

Comentarii (0)

În cazul meu "SQL Server" Server service oprit. Când am reluat serviciul pe care mi-a permis pentru a executa interogarea și a elimina eroarea.

Sale, de asemenea, o idee bună pentru a examina interogare pentru a afla de ce interogarea a făcut acest serviciu pentru a opri

Comentarii (0)

Unul din motivele pentru care am găsit pentru această eroare este de 'Dimensiune Pachet=xxxxx' în șirul de conexiune. dacă valoarea de xxxx este prea mare, vom vedea această eroare. Fie eliminați această valoare și să SQL server descurca sau menține scăzută, în funcție de capabilități de rețea.

Comentarii (0)

S-a întâmplat cu mine când am fost încercarea de a restabili o bază de date SQL și verificat următoarea Casetă de selectare în "Opțiuni" fila,

Ca's un stand singur server de baze de date doar închiderea SSMS și de redeschidere a rezolvat problema pentru mine.

Comentarii (0)

Acest lucru se întâmplă atunci când baza de date este scăzut și re-create de unele resurse comune este încă în vedere baza de date încă mai există, așa că, atunci când re-rula executa interogare pentru a crea tabele în baza de date dupa ce a fost re-creat de eroare nu va apărea din nou și Comandă(s) a finalizat cu succes.mesaj se va afișa în locul mesajului de eroareMsg 233, Nivel 20, Stat 0, 0 Linie de transport-nivelul de eroare a avut loc atunci când a trimite cererea la server. (furnizor: Memorie Partajată Furnizor de eroare: 0 - nici un proces Nu este în celălalt capăt al țevii.)`.

Pur și simplu ignora această eroare atunci când sunt în scădere și recrearea baze de date și re-executa DDL interogări cu nu vă faceți griji.

Comentarii (0)

Am avut aceeasi problema. Am rezolvat-o, trunchierea JURNALUL de SQL Server. Verifica sa fac asta, si apoi spune-ne, dacă această soluție te-a ajutat.

Comentarii (0)

Pentru mine răspunsul este să faceți upgrade sistemul de OPERARE de la 2008R2 să 2012R2, soluția de iisreset exe sau reporniți apppool n't de lucru pentru mine. De asemenea, am încercat să rândul său, de TCP Chimney Descărcare setare, dar n-am't restart la server deoarece este un server de producție, care nu't de lucru, fie.

Comentarii (0)

Pentru mine solutia a fost total diferite.

În cazul meu, am avut o objectsource care a necesitat o datetimestamp parametru. Chiar dacă ODS parametru ConvertEmptyStringToNull era adevărat 1/1/0001 a fost trecut la SelectMethod. Care la rândul său a provocat un sql datetime preaplin excepție când datetime a fost trecut la sql server.

Adăugat o verificare suplimentară pentru datetime.an != 0001 și care a rezolvat-o pentru mine.

Ciudat că s-ar arunca un nivel de transport de eroare și nu o datetime eroare de depășire. Oricum..

Comentarii (1)

Am întâlnit această eroare recent între business server și server de baze de date. Soluția pentru noi a fost să dezactivați "IP Descărcare" pe interfețe de rețea. Apoi, eroarea s-a dus.

Comentarii (0)