Microsoft distribuie remedierile Microsoft SQL Server 2008 ca fișier descărcabil. Deoarece remedierile sunt cumulative, fiecare versiune nouă conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în remedierea anterioară SQL Server 2008.
Simptome
Pe un computer care rulează Microsoft SQL Server 2008, întâmpinați una sau mai multe dintre următoarele probleme atunci când creați un server legat utilizând furnizorul de SQL Native Client (Sqlncli.dll).Notă Aceste probleme apar și în Microsoft SQL Server 2005 Service Pack 3 (SP3). Cu toate acestea, remedierea rapidă din acest articol nu se aplică pentru SQL Server 2005 SP3.
Problema 1
Luați în considerare următorul scenariu:
-
În SQL Server Management Studio, deschideți fereastra Server legat nou și creați un server legat utilizând una dintre următoarele instalări:
-
furnizor SQL Native Client cu tip server ca SQL Server
-
furnizor SQL Native Client (nu SQL Native Client 10) cu tip de server ca Altă sursă de date
-
Microsoft OLE DB Provider pentru SQL Server cu tipul Server ca Altă sursă de date
-
-
Extindeți catalogul Servere legate în SQL Server Management Studio pentru a vedea serverele legate.
În acest scenariu, serviciul SQL Server se închide în mod neașteptat sau un fișier mini-dump este generat în mod repetat în folderul jurnal de erori SQL Server. Această problemă continuă până când serviciul SQL Server este oprit. În plus, SQL Server Management Studio raportează următoarea eroare:TITLE: Microsoft SQL Server Management Studio------------------------------Failed pentru a regăsi datele pentru această solicitare. (Microsoft.SqlServer.Management.Sdk.Sfc)Pentru ajutor, faceți clic pe: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&LinkId=20476------------------------------ADDITIONAL INFORMATION:A apărut o excepție la executarea unei instrucțiuni Sau a unui grup Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)------------------------------Timeout a expirat. Perioada de expirare s-a scurs înainte de terminarea operațiunii sau serverul nu răspunde. (Microsoft SQL Server, Eroare: -2)Notă Această problemă nu apare dacă rulați o interogare de server legat atunci când utilizați SQL Native Client furnizor cu tip server ca SQL Server.
Problema 2
Luați în considerare următorul scenariu:
-
Creați un server legat utilizând Microsoft OLE DB Provider pentru drivere ODBC.
-
Sursa de date ODBC este creată utilizând furnizorul SQL Native Client cu tipul Server ca Altă sursă de date.
În acest scenariu, serverul legat nu returnează rezultate.
Rezolvare
Remedierea pentru această problemă a fost lansată pentru prima dată în Actualizarea cumulativă 7 pentru SQL Server 2008 Service Pack 1. Pentru mai multe informații despre acest pachet de actualizare cumulativă, faceți clic pe următorul număr de articol pentru a vizualiza articolul în Baza de cunoștințe Microsoft: -
979065Pachetul de actualizare cumulativă 7 pentru SQL Server 2008 Service Pack 1 NoteÎn cazul în care compilările sunt cumulative, fiecare lansare de remediere nouă conține toate remedierile rapide și toate remedierile de securitate care au fost incluse în ediția anterioară de remediere SQL Server 2008. Vă recomandăm să luați în considerare aplicarea celei mai recente remedieri care conține această remediere rapidă. Pentru mai multe informații, faceți clic pe următorul număr de articol pentru a vizualiza articolul din Baza de cunoștințe Microsoft: -
970365Compilările SQL Server 2008 care au fost lansate după lansarea SQL Server 2008 Service Pack 1 pentru Microsoft SQL Server 2008 sunt create pentru anumite pachete Service Pack SQL Server. Trebuie să aplicați o remediere rapidă SQL Server 2008 Service Pack 1 la o instalare de SQL Server 2008 Service Pack 1. În mod implicit, orice remediere rapidă furnizată într-un SQL Server pachet Service Pack este inclusă în următorul pachet Service Pack SQL Server.
Mai multe informații
Puteți confirma versiunea fișierelor Sqlncli.dll și Sqlservr.exe rulând următoarea interogare:
select * from sys.dm_os_loaded_modules where name like '%sqlncli.dll' or name like '%sqlservr.exe'
Dacă utilizați Microsoft SQL Server 2008 Service Pack 1 (SP1) sau versiuni mai recente de Microsoft SQL Server 2008, interogarea va returna următoarele informații despre versiune:
-
Fișierul Sqlncli.dll va avea o versiune ulterioară datei de 9.0:3207.0.
-
Fișierul Sqlservr.exe va avea o versiune mai recentă sau egală cu 10.0:2531.0, dar mai veche decât 10.0:2766.0.
Dacă utilizați Microsoft SQL Server 2008 RTM sau versiuni mai recente de SQL Server 2008 RTM, interogarea va returna următoarele informații despre versiune:
-
Fișierul Sqlncli.dll va avea o versiune mai recentă decât versiunea 9.0:3207.0.
-
Fișierul Sqlservr.exe va avea o versiune mai recentă sau egală cu 10.0:1600.0, dar mai veche decât 10.0:1835.0.
Soluție de evitare
Pentru a rezolva aceste probleme, urmați acești pași:Soluție 1:1. Ștergeți serverul legat cu erori.2. Creați un server legat nou utilizând furnizorul SQL Server Native Client 10.0 (SQLNCLI10). Pentru a face acest lucru: a. Faceți clic dreapta pe Servere legate și selectați Server legat nou. B. Selectați Altă sursă de date și alegeți SQL Server Native Client 10.0 pentru Furnizor.Soluție 2:
-
Creați o subcheie de registry denumită "SQLNCLI" în următoarea cale:
HKLM\Software\Microsoft\DataAccess
-
Creați o intrare de registry de tip REG_DWORD denumită "SQLOSPartitioning" sub această subcheie.
-
Setați valoarea acestei intrări la 0x0.
Stare
Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.
Mai multe informații
|
Software pentru reguli |
Titlu regulă |
Descriere regulă |
Versiuni de produs pentru care se evaluează regula |
|
Consultant centru de sistem |
SQL Server KB979779 de actualizare lipsă pentru a preveni deteriorarea memoriei client nativ SQL |
Un furnizor de SQL Native Client care corespunde SQL Server 2005 este prezent în acest server. Această versiune mai veche de SQLNCLI.dll poate fi încărcată în SQL Server 2008 și SQL Server 2008 R2 atunci când se enumeră furnizori și se creează servere legate. Versiunile specifice de SQL Server 2008 și SQL Server 2008 R2 pot întâmpina probleme și se blochează atunci când creați sau utilizați un server legat creat cu acest SQLNCLI.dll afectat. Actualizați instanțele afectate de SQL Server 2008 și SQL Server 2008 R2 cu remedierile necesare sau evitați utilizarea acestui SQLNCLI.dll atunci când creați servere legate. |
Referințe
Pentru mai multe informații despre modelul de servicii incrementale pentru SQL Server, faceți clic pe următorul număr de articol pentru a vedea articolul în Baza de cunoștințe Microsoft:
935897 Un model de servicii incrementale este disponibil de la echipa de SQL Server pentru a livra remedieri rapide pentru problemeleraportate Pentru mai multe informații despre schema de denumire a actualizărilor SQL Server, faceți clic pe următorul număr de articol pentru a vedea articolul în Baza de cunoștințe Microsoft:
822499Schemă de denumire nouă pentru pachetelede actualizare software Microsoft SQL Server Pentru mai multe informații despre terminologia actualizărilor de software, faceți clic pe următorul număr de articol pentru a vedea articolul în Baza de cunoștințe Microsoft:
824684 Descrierea terminologiei standard care este utilizată pentru a descrie actualizările de software Microsoft