Dela via


MSSQLSERVER_845

gäller för:SQL Server

Detaljer

Egenskap Värde
Produktnamn SQL Server
Händelse-ID 845
Händelsekälla MSSQLSERVER
Komponent SQLEngine
Symboliskt namn BUFLATCH_TIMEOUT
Meddelandetext Timeout inträffade under väntan på buffertlås typ %d för sida %S_PGID, databas-ID %d.

Förklaring

En process väntade på att hämta en spärr, men processen väntade tills tidsgränsen upphört och kunde inte hämta en. Det kan inträffa om det tar för lång tid att slutföra en I/O-åtgärd, vanligtvis som ett resultat av andra aktiviteter som blockerar systemprocesser. I vissa fall kan det här felet bero på maskinvarufel.

Orsak

Det här felmeddelandet är beroende av systemets övergripande miljö. Någon av följande omständigheter kan leda till ett överstressat system:

  • Maskinvara som inte uppfyller dina behov av indata/utdata (I/O) och minne
  • Felaktigt konfigurerade och testade inställningar
  • Ineffektiv design

Du kan se fel 845 när systemet är hårt belastat och inte kan uppfylla arbetsbelastningskraven. Några av de vanligaste orsakerna till en stressad miljö är:

  • Maskinvaruproblem
  • Komprimerade volymer
  • Konfigurationsinställningar för SQL Server som inte är standard
  • Ineffektiva frågor eller indexdesign
  • Frekventa autosparåtgärder för databasåterväxt eller autoshrink

Användaråtgärd

Försök med följande för att förhindra att det här felet inträffar:

  • Kontrollera om du har några flaskhalsar i maskinvaran. Se Identifiera flaskhalsar för ett bra ställe att börja på. Om det behövs uppgraderar du maskinvaran så att den kan tillgodose behoven i din miljös konfiguration, frågor och belastning.

  • Kontrollera att alla maskinvarufunktioner fungerar korrekt. Kontrollera om det finns loggade fel och kör diagnostik som tillhandahålls av maskinvaruleverantören. Sök efter associerade I/O-fel i felloggen eller händelseloggen. I/O-fel pekar vanligtvis på ett diskfel.

  • Kontrollera att diskvolymerna inte komprimeras. Lagring av data och loggfiler på komprimerade enheter stöds inte. Mer information finns i Databasfiler och filgrupper. Mer information om stöd för komprimerade enheter finns i följande artikel: Beskrivning av stöd för SQL Server-databaser på komprimerade volymer

  • Se om felmeddelandena försvinner när du inaktiverar alla följande konfigurationsalternativ för SQL Server:

  • Justera frågor för att minska de resurser som används i systemet. Prestandajustering hjälper till att minska belastningen på ett system och förbättra svarstiden för enskilda frågor.

  • Ange egenskapen autoshrink till AV för att minska kostnaderna för ändringar i databasens storlek.

  • Se till att du anger egenskapen autogrow till steg som är tillräckligt stora för att vara ovanliga. Schemalägg ett jobb för att kontrollera det tillgängliga utrymmet i dina databaser och öka sedan databasens storlek under låg belastning.

  • Kontrollera felloggen för icke-givande uppgifter och andra kritiska fel. Lös dessa fel först eftersom de kan peka på rotorsaken till det underliggande problemet.

  • Om kritiska fel, till exempel påståenden ofta inträffar, kan du lösa dessa problem.

  • Om 845-felmeddelandena är ovanliga kan du ignorera felen.