Überwachen der Arbeitsspeicherverwendung

Instanzen von SQL Server sollten regelmäßig überwacht werden, um sicherzustellen, dass sich die Speicherauslastung im normalen Bereich bewegt.

Um den Arbeitsspeicherstatus niedrig zu halten, verwenden Sie bei der Überwachung folgende Objektleistungsindikatoren:

  • Arbeitsspeicher: Verfügbare Bytes

  • Arbeitsspeicher: Seiten/s

Der Verfügbare Bytes-Leistungsindikator gibt an, wie viele Bytes an Arbeitsspeicher derzeit für die Verwendung durch Prozesse verfügbar sind. Der Seiten/s-Leistungsindikator gibt die Anzahl der Seiten an, die entweder aufgrund von schweren Seitenfehlern vom Datenträger abgerufen oder auf den Datenträger geschrieben wurden, um Speicherplatz im Workingset aufgrund von Seitenfehlern freizugeben.

Niedrige Werte für den Verfügbare Bytes-Leistungsindikator können ein Anzeichen dafür sein, dass insgesamt zu wenig Arbeitsspeicher auf dem Computer vorhanden ist oder dass eine Anwendung keinen Arbeitsspeicher freigibt. Ein hoher Wert für den Seiten/s-Leistungsindikator kann auf überhöhte Auslagerungen hindeuten. Überwachen Sie den Speicher:Seitenfehler/s-Leistungsindikator, um sicherzustellen, dass die Datenträgeraktivität nicht durch Auslagern verursacht wird.

Ein geringes Maß an Auslagerungen (und somit an Seitenfehlern) ist normal, selbst wenn der Computer über ausreichend Arbeitsspeicher verfügt. Der Microsoft-Manager für virtuellen Arbeitsspeicher (VMM, Virtual Memory Manager) entnimmt Seiten von SQL Server und anderen Prozessen, um die Größen der Workingsets dieser Prozesse anzupassen. Infolge der VMM-Aktivität kommt es häufig zu Seitenfehlern. Um zu ermitteln, ob die überhöhten Auslagerungen von SQL Server oder einem anderen Prozess verursacht werden, sollten Sie den Prozess: Seitenfehler/s-Leistungsindikator der SQL Server-Prozessinstanz überprüfen.

Weitere Informationen zum Auflösen überhöhter Auslagerungen finden Sie in der Dokumentation des Windows-Betriebssystems.

Isolieren des von SQL Server verwendeten Arbeitsspeichers

In der Standardkonfiguration werden Arbeitsspeicheranforderungen von SQL Server basierend auf den verfügbaren Systemressourcen dynamisch geändert. Wenn SQL Server mehr Arbeitsspeicher benötigt, wird das Betriebssystem nach der Verfügbarkeit von freiem physikalischen Arbeitsspeicher abgefragt. Anschließend wird der verfügbare Arbeitsspeicher verwendet. Wenn SQL Server den derzeit zugeordneten Arbeitsspeicher nicht benötigt, wird der Arbeitsspeicher für das Betriebssystem freigegeben. Sie können die Option zur dynamischen Verwendung des Arbeitsspeichers jedoch auch mithilfe der Serverkonfigurationsoptionen minservermemory und maxservermemory überschreiben. Weitere Informationen finden Sie unter Arbeitsspeicheroptionen für den Server.

Um die Menge des von SQL Server verwendeten Arbeitsspeichers zu überwachen, sollten Sie die folgenden Leistungsindikatoren überprüfen:

  • Prozess: Arbeitsseiten

  • SQL Server: Puffer-Manager: Puffercache-Trefferquote

  • SQL Server: Puffer-Manager: Seiten gesamt

  • SQL Server: Speicher-Manager: Serverspeicher gesamt (KB)

Der Arbeitsseiten-Leistungsindikator gibt die Menge an Arbeitsspeicher an, die von einem Prozess verwendet wird. Wenn dieser Wert konstant unter der Menge an Arbeitsspeicher liegt, die in den Serveroptionen min server memory und max server memory festgelegt ist, wurde SQL Server so konfiguriert, dass zu viel Arbeitsspeicher beansprucht wird.

Der Puffercache-Trefferquote-Leistungsindikator ist anwendungsspezifisch. Eine Rate von 90 Prozent oder höher ist jedoch wünschenswert. Fügen Sie so lange Arbeitsspeicher hinzu, bis der Wert konstant über 90 Prozent liegt. Ein Wert von über 90 Prozent gibt an, dass mehr als 90 Prozent aller Datenanforderungen vom Datencache erfüllt wurden.

Wenn der Serverspeichergesamt(KB)-Leistungsindikator gegenüber der auf dem Computer verfügbaren Menge an physikalischem Arbeitsspeicher konstant hoch ist, kann dies bedeuten, dass zusätzlicher Arbeitsspeicher erforderlich ist.