Freigeben über


MSSQLSERVER_8651

Neu: 17. Juli 2006

Details

Produktname

SQL Server

Produktversion

9.0

Buildnummer des Produkts

9.00.1281.60

Ereignis-ID

8651

Ereignisquelle

MSSQLSERVER

Komponente

SQLEngine

Symbolischer Name

MEMGRANT_ERR

Meldungstext

Der angeforderte Vorgang konnte nicht ausgeführt werden, da das benötigte Minimum an Arbeitsspeicher für die Abfrage nicht verfügbar ist. Verwenden Sie einen niedrigeren Wert für die Serverkonfigurationsoption 'min memory per query'.

Erklärung

Andere Prozesse verbrauchen Serverarbeitsspeicher (Arbeitsspeicherknappheit im Server).

Benutzeraktion

Entweder muss der konfigurierte Wert für die Serverkonfigurationsoption 'min memory per query' verringert werden, oder die Abfrageauslastung auf dem Server muss reduziert werden.

In der folgenden Liste werden allgemeine Schritte erläutert, die bei der Problembehandlung von Arbeitsspeicherfehlern helfen:

  1. Überprüfen Sie, ob andere Anwendungen oder Dienste Arbeitsspeicher auf diesem Server verbrauchen. Konfigurieren Sie weniger kritische Anwendungen oder Dienste neu, um weniger Arbeitsspeicher zu verbrauchen.
  2. Starten Sie die Sammlung der Leistungsindikatoren für SQL Server: Puffer-Manager und SQL Server: Speicher-Manager.
  3. Überprüfen Sie die folgenden Arbeitsspeicher-Konfigurationsparameter von SQL Server:
    • max server memory
    • min server memory
    • awe enabled
    • min memory per query
      Achten Sie auf ungewöhnliche Einstellungen. Berichtigen Sie sie bei Bedarf. Berücksichtigen Sie erhöhte Arbeitsspeicheranforderungen für SQL Server 2005. Die Standardeinstellungen sind im Thema zum Festlegen von Serverkonfigurationsoptionen in der SQL Server-Onlinedokumentation aufgelistet.
  4. Wenn Sie AWE (Address Windowing Extensions) verwenden, überprüfen Sie, ob die Windows-Sicherheitseinstellung Lock pages in memory aktiviert ist.
  5. Beobachten Sie die Ausgabe von DBCC MEMORYSTATUS und die Art der Änderung, wenn diese Fehlermeldung angezeigt wird.
  6. Überprüfen Sie die Arbeitsauslastung (z. B. die Anzahl der gleichzeitigen Sitzungen oder die aktuell ausgeführten Abfragen).

Die folgenden Aktionen stellen möglicherweise mehr verfügbaren Arbeitsspeicher für SQL Server bereit:

  • Wenn Anwendungen neben SQL Server sehr ressourcenaufwändig sind, versuchen Sie, das Ausführen der Anwendungen zu beenden, oder ziehen Sie das Ausführen der Anwendungen auf einem getrennten Server in Erwägung. Dies beseitigt die Arbeitsspeicherknappheit.
  • Wenn Sie max server memory konfiguriert haben, erhöhen Sie die Einstellung.

Führen Sie die folgenden DBCC-Befehle aus, um mehrere SQL Server-Arbeitsspeichercaches freizugeben.

  • DBCC FREESYSTEMCACHE
  • DBCC FREESESSIONCACHE
  • DBCC FREEPROCCACHE

Wenn das Problem weiterhin besteht, müssen Sie weitere Untersuchungen ausführen und möglicherweise die Arbeitsauslastung reduzieren.