Freigeben über


MSSQLSERVER_844

Gilt für: SQL Server

Details

attribute Wert
Produktname SQL Server
Ereignis-ID 844
Ereignisquelle MSSQLSERVER
Komponente SQLEngine
Symbolischer Name BUFLATCH_TIMEOUT_CONTINUE
Meldungstext Timeout beim Warten auf einen Pufferlatch -- Typ %d, Pufferpool %p, Seite %d:%d, STAT %#x, Datenbank-ID %d, Zuordnungseinheits-ID: %I64d%ls, Task 0x%p : %d, Wartezeit %d, Flags 0x%I64x, besitzender Task 0x%p. Der Wartevorgang wird fortgesetzt.

Erklärung

Ein SQL-Prozess wartet darauf, einen Latch abzurufen. Das Problem kann dadurch verursacht werden, dass ein E/A-Vorgang zu viel Zeit beansprucht, bevor er abgeschlossen wird. Normalerweise ist der Fehler das Ergebnis des Blockierens von Systemprozessen durch andere Tasks. In manchen Fällen kann dieser Fehler einem Hardwarefehler geschuldet sein. Wenn diese Fehlermeldung auftritt, bemerken Sie möglicherweise, dass der Computer und SQL Server nicht mehr reagieren.

Ursache

Diese Fehlermeldung hängt von der allgemeinen Umgebung Ihres Systems ab. Jeder der folgenden Umstände kann zu einem überbeanspruchten System führen:

  • Hardware, die Ihre Anforderungen an E/A (Eingabe/Ausgabe) und Arbeitsspeicher nicht erfüllen kann
  • Fehlerhaft konfigurierte und getestete Einstellungen
  • Ineffizienter Entwurf

Möglicherweise tritt der Fehler 844 auf, wenn Ihr System stark ausgelastet ist und die Arbeitsauslastungsanforderungen nicht erfüllen kann. Einige der häufigsten Gründe für eine überbeanspruchte Umgebung sind die folgenden:

  • Hardwareprobleme
  • Komprimierte Volumes
  • Nicht standardmäßige SQL Server-Konfigurationseinstellungen
  • Ineffiziente Abfragen oder ineffizienter Indexentwurf
  • Häufige AutoGrow- oder AutoShrink-Datenbankvorgänge

Benutzeraktion

Versuchen Sie Folgendes, um zu verhindern, dass der Fehler erneut auftritt:

  • Ermitteln Sie, ob Hardwareengpässe vorliegen. Unter Identifizieren von Engpässen erhalten Sie Informationen hierzu. Führen Sie, wenn erforderlich, ein Upgrade für Ihre Hardware durch, damit sie die Anforderungen der Konfiguration Ihrer Umgebung, Ihrer Abfragen und der Auslastung erfüllen kann.

  • Überprüfen Sie, ob alle Hardwarefunktionen fehlerfrei funktionieren. Überprüfen Sie alle protokollierten Fehler, und führen Sie alle von Ihrem Hardwarehersteller bereitgestellten Diagnosen aus. Führen Sie eine Überprüfung auf zugehörige E/A-Fehler im Fehlerprotokoll oder Ereignisprotokoll aus. E/A-Fehler deuten normalerweise auf eine Datenträgerfehlfunktion hin.

  • Sorgen Sie dafür, dass Ihre Datenträgervolumes nicht komprimiert sind. Das Speichern von Daten sowie Protokolldateien für komprimierte Laufwerke werden nicht unterstützt. Weitere Informationen hierzu finden Sie unter Datenbankdateien und Dateigruppen. Weitere Informationen zur Unterstützung komprimierter Laufwerke finden Sie im folgenden Artikel: SQL Server-Datenbanken werden auf komprimierten Volumes nicht unterstützt.

  • Überprüfen Sie, ob die Fehlermeldungen verschwinden, wenn Sie alle folgenden SQL Server-Konfigurationsoptionen deaktivieren:

  • Optimieren Sie die Abfragen, um die für das System verwendeten Ressourcen zu reduzieren. Durch Leistungsoptimierung kann die Belastung für ein System reduziert und die Reaktionszeit für einzelne Abfragen verbessert werden.

  • Legen Sie die AutoShrink-Eigenschaft auf OFF fest, um den Aufwand für Änderungen an der Datenbankgröße zu verringern.

  • Stellen Sie sicher, dass Sie die AutoGrow-Eigenschaft auf Inkremente festlegen, die groß genug sind und somit nicht häufig auftreten. Planen Sie einen Auftrag, um den verfügbaren Speicherplatz in den Datenbanken zu überprüfen, und erhöhen Sie dann die Datenbankgröße außerhalb der Spitzenzeiten.

  • Überprüfen Sie das Fehlerprotokoll auf Tasks, die kein Ergebnis bereitstellen, sowie auf andere kritische Fehler. Beheben Sie diese Fehler zunächst, da sie auf die Grundursache des zugrunde liegenden Problems hindeuten könnten.

  • Wenn kritische Fehler, z. B. Assert-Vorgänge, häufig auftreten, beheben Sie diese Probleme.

  • Wenn 844-Fehlermeldungen selten auftreten, können Sie sie ignorieren.