DBAtlas · Atlas für Datenbankbetrieb

8651: Could not perform the operation because the requested memory grant was not available

SQL Server

Was bedeutet das?

Der von der Abfrage benötigte Memory Grant war nicht verfügbar, und die Operation konnte nicht ausgeführt werden. Anders als bei 8645 handelt es sich nicht um ein Warten, sondern um das schlichte Scheitern, den angeforderten großen Speicherblock bereitzustellen; das deutet meist auf starken Speicherdruck hin.

Ursache

Der verfügbare Abfragespeicher des Servers kann den von einem einzelnen Operator angeforderten Grant nicht erfüllen (z. B. ein sehr großer Sort/Hash). Ursache können übermäßig hohe Speicherschätzungen, ein niedriges max server memory, externer Speicherdruck oder ein niedriges Resource-Governor-Limit sein, REQUEST_MAX_MEMORY_GRANT_PERCENT (Workload Group) oder MAX_MEMORY_PERCENT (Resource Pool).

Lösung

Optimiere Abfragen, die Memory Grants aufblähen (Statistiken aktualisieren, passende Indizierung, Abfrage aufteilen). Überwache gesamten und verfügbaren Speicher; prüfe die Einstellung max server memory und den Speicherdruck durch externe Anwendungen. Ist Resource Governor im Einsatz, prüfe die Einstellungen REQUEST_MAX_MEMORY_GRANT_PERCENT der Workload Group und MAX_MEMORY_PERCENT des Pools. Verlege speicherintensive Batch-Jobs in lastarme Zeiten.

In DBAtlas öffnen →

Weitere Einträge zu dieser Datenbank