INF: SQL Server kan beschadiging van het geheugen en herstel fouten weergeven

Samenvatting

Microsoft SQL Server kan een van de volgende berichten weergegeven in het foutenlogboek van SQL Server:

854: machine foutherstel geheugen ondersteunt. Geheugenbeveiliging SQL is om te herstellen van een beschadigd geheugen ingeschakeld.


856: SQL Server heeft een beschadiging hardware geheugen in de database '%ls,' bestands-ID: %u, pagina-ID; %u, geheugenadres: 0 x % I64x en de pagina is hersteld.


855: geheugenbeschadiging onherstelbare hardware gedetecteerd. Het systeem instabiel. Controleer het gebeurtenislogboek van Windows voor meer informatie.

Meer informatie

Op computers die nieuwere hardware en Windows Server 2012 of een latere versie, de hardware kunt melden bij het besturingssysteem en toepassingen dat geheugen besturingssysteem pagina's (pages) gemarkeerd als ongeldig of beschadigd. Deze meldingen van beschadigde geheugen pagina registreren toepassingen zoals SQL Server kan met behulp van de volgende API-set:

  • GetMemoryErrorHandlingCapabilities

  • RegisterBadMemoryNotification

  • BadMemoryCallbackRoutine

SQL Server wordt ondersteuning toegevoegd voor deze meldingen in Microsoft SQL Server 2012 en latere versies. Tijdens het opstarten van SQL Server controleert SQL Server of de hardware deze nieuwe functie ondersteunt. Bovendien wordt het volgende bericht in het foutenlogboek:

2014-05-04-10:06:01.54 Server-Machine ondersteunt foutherstel geheugen. Geheugenbeveiliging SQL is om te herstellen van een beschadigd geheugen ingeschakeld.


Op dit moment wordt alleen de buffergroep actie wanneer SQL Server deze meldingen ontvangt. Wanneer een bericht wordt ontvangen, heeft SQL Server de hele buffergroep doorlopen en ontdek het adres van elke toegewezen buffer. SQL Server wordt de QueryWorkingSetEX API om te controleren of de geheugen-pagina's die een reservekopie van de gegevenspagina is gemarkeerd als slecht. De PSAPI_WORKING_SET_EX_BLOCK uitvoer structuur die overeenkomt met deze geheugenpagina hebben de slechte lid is ingesteld op 1 als een beschadigd gemeld.

Als de buffer van toepassingen of gegevens pagina momenteel niet is gewijzigd of niet verwerken I/O, SQL Server kunt verwijderen en deactiveren verbindt zich ertoe de gegevenspagina. SQL Server registreert vervolgens het volgende bericht weergegeven:

SQL Server heeft een beschadiging hardware geheugen in de database '%ls,' bestands-ID: %u, pagina-ID; %u, geheugenadres: 0 x % I64x en de pagina is hersteld.


Wanneer u query's moet die gegevenspagina opnieuw, kan de buffergroep de gegevenspagina lezen van de schijf en breng de inhoud terug naar de buffergroep. Het is ook mogelijk dat de versie op schijf van de pagina in een beschadigde staat. SQL Server kan in dat geval extra fouten zoals 824 fout melden.

Als de beschadigde pagina wordt gebruikt door sommige andere object in de cache of structuur, maar niet door de buffergroep, registreert SQL Server het volgende bericht weergegeven:

Onherstelbare geheugenbeschadiging door hardware gedetecteerd. Het systeem instabiel. Controleer het gebeurtenislogboek van Windows voor meer informatie.


Als de server geheugenfouten melden wordt, neem contact op met de leverancier van de computerhardware en u passende acties uitvoeren zoals Geheugencontrole uitvoeren, BIOS en de firmware bijwerken en vervangen van beschadigde geheugenmodules.

De volgende twee uitgebreide gebeurtenissen zijn beschikbaar vanaf SQL Server 2012. Ze worden aangeroepen voor elke pagina die is vastgesteld of geïdentificeerd als beschadigd maar kan niet worden vastgesteld.



Traceringsvlag van SQL Server 849 kunt u voorkomen dat SQL Server met het besturingssysteem voor geheugen fout meldingen registreren. Bedenk echter dat traceringsvlag 849 SQL Server beschadigd geheugen meldingen ontvangen van besturingssysteem wordt uitgeschakeld. Daarom raadzaam niet dat u deze traceringsvlag onder normale omstandigheden.

Let op dat standaard SQL Server deze meldingen over ondersteunde hardware ontvangt.

Ook moet u er rekening mee houden dat wanneer SQL Server wordt geregistreerd voor deze geheugen fout meldingen, het systeemproces lazy writer geen constante pagina gezocht voert. Voor meer informatie over de pagina constant gecontroleerd, klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base:

2015759 het Msg 832 (constante pagina is gewijzigd) in SQL Server oplossen

Meer hulp nodig?

Uw vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Microsoft insiders

Was deze informatie nuttig?

Bedankt voor uw feedback.

Hartelijk dank voor uw feedback! Het lijkt ons een goed idee om u in contact te brengen met een van onze Office-ondersteuningsagenten.

×