In SQL Server wird die dynamische Zuordnung von AWE-Arbeitsspeicher unter Windows Server 2003 unterstützt. Beim Starten wird in SQL Server nur ein kleiner Teil des durch AWE zugeordneten Arbeitsspeichers reserviert. Wenn zusätzlicher durch AWE zugeordneter Arbeitsspeicher erforderlich ist, ordnet das Betriebssystem diesen SQL Server dynamisch zu. Wenn dagegen weniger Ressourcen erforderlich sind, kann SQL Server durch AWE zugeordneten Arbeitsspeicher an das Betriebssystem zurückgeben, damit er von anderen Prozessen oder Anwendungen verwendet werden kann. Weitere Informationen zur Konfigurationsoption awe enabled finden Sie unter awe enabled (Option).
Mit der Einführung der Windows Server 2003-Produktfamilie wird mehr physikalischer Arbeitsspeicher unterstützt. Der für AWE verfügbare Arbeitsspeicher hängt vom verwendeten Betriebssystem ab. In der folgenden Liste ist der für jedes Betriebssystem der Windows Server 2003-Produktfamilie zu diesem Zeitpunkt maximal verfügbare physikalische Arbeitsspeicher aufgeführt.
-
In der Windows Server 2003 Standard Edition werden bis zu 4 GB physikalischer Arbeitsspeicher unterstützt.
-
In der Windows Server 2003 Enterprise Edition werden bis zu 32 GB physikalischer Arbeitsspeicher unterstützt.
-
In der Windows Server 2003 Datacenter Edition werden bis zu 64 GB physikalischer Arbeitsspeicher unterstützt.
Konfigurieren von Arbeitsspeicheroptionen
SQL Server ordnet durch AWE zugeordneten Arbeitsspeicher dynamisch zu, wenn die Anwendung unter einer der Windows Server 2003-Betriebssystem-Editionen ausgeführt wird. Das heißt, der Pufferpool kann durch AWE zugeordneten Arbeitsspeicher dynamisch verwalten (innerhalb der Einschränkungen der Optionen min server memory und max server memory), um die Arbeitsspeicherverwendung von SQL Server mit den allgemeinen Systemanforderungen abzugleichen.
Wenn AWE aktiviert ist, versucht SQL Server stets durch AWE zugeordneten Arbeitsspeicher zu verwenden. Dies gilt für alle Arbeitsspeicherkonfigurationen, einschließlich Computern, die Anwendungen weniger als 3 GB Adressraum für den Benutzermodus bereitstellen.
-
Es wird empfohlen, AWE als standardmäßigen Arbeitsspeichermodus für SQL Server unter Windows Server 2003 festzulegen. Für das Feature zum Hinzufügen von Speicher im laufenden Systembetrieb (Hot Add Memory) muss AWE während des Starts von SQL Server aktiviert sein. Weitere Informationen finden Sie unter Hinzufügen von Speicher im laufenden Systembetrieb (Hot Add Memory).
Hinweis: |
|---|
|
AWE ist unter 64-Bit-Betriebssystemen nicht erforderlich und kann unter diesen Betriebssystemen nicht konfiguriert werden.
|
-
Durch AWE zugeordneter Arbeitsspeicher wird unterhalb von 3 GB unterstützt. Deshalb können Sie die Optionen min server memory und max server memory innerhalb des Arbeitsspeicherbereichs definieren oder für beide Optionen die Standardwerte verwenden.
-
Legen Sie eventuell max server memory für SQL Server fest, um zusätzlichen Arbeitsspeicher für andere Anwendungen, die auf dem Computer ausgeführt werden, sicherzustellen. SQL Server kann zwar durch AWE zugeordneten Arbeitsspeicher dynamisch freigeben, aber der aktuelle durch AWE zugeordnete Arbeitsspeicherumfang kann nicht in die Auslagerungsdatei ausgelagert werden.
Um AWE für eine Instanz von SQL Server verfügbar zu machen, legen Sie mithilfe von sp_configure die Option awe enabled auf 1 fest, und starten Sie dann SQL Server neu.
Weitere Informationen zu min server memory und max server memory finden Sie unter Serverarbeitsspeicher-Optionen.
Vor dem Aktivieren von AWE müssen Sie die Richtlinie Sperren von Seiten im Speicher konfigurieren. Weitere Informationen finden Sie unter Vorgehensweise: Aktivieren der Option Sperren von Seiten im Speicher (Windows).
Beispiel
Das folgende Beispiel zeigt, wie Sie AWE aktivieren und ein Limit von 1 GB für min server memory und 6 GB für max server memory konfigurieren:
Konfigurieren Sie zunächst AWE:
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
Nach dem Neustart von SQL Server wird im SQL Server-Fehlerprotokoll eingetragen, dass Address Windowing Extensions aktiviert ist:
Konfigurieren Sie anschließend den Arbeitsspeicher.
sp_configure 'min server memory', 1024
RECONFIGURE
GO
sp_configure 'max server memory', 6144
RECONFIGURE
GO
In diesem Beispiel bewirken die Arbeitsspeichereinstellungen, dass der Pufferpool durch AWE zugeordneten Arbeitsspeicher zwischen 1 GB und 6 GB dynamisch verwaltet. Falls andere Anwendungen zusätzlichen Arbeitsspeicher benötigen, kann SQL Server den durch AWE zugeordneten Arbeitsspeicher freigeben, falls er nicht benötigt wird. In diesem Beispiel kann durch AWE zugeordneter Arbeitsspeicher nur bis 1 GB freigegeben werden.
Mit dynamischem AWE kann SQL Server auch den Arbeitsspeicher erhöhen, wenn einem Computer, der das Hinzufügen von Speicher im laufenden Systembetrieb (Hot Add Memory) unterstützt, zusätzlicher Arbeitsspeicher hinzugefügt wird. Dieses Feature ist unter Windows Server 2003 3 Enterprise Edition bzw. Datacenter Edition verfügbar und ermöglicht das Hinzufügen von Arbeitsspeicher, während der Computer in Betrieb ist. Angenommen, SQL Server wird unter Windows Server 2003 Enterprise Edition ausgeführt und auf einem Computer mit 16 GB physikalischem Arbeitsspeicher gestartet. Das Betriebssystem ist so konfiguriert, dass Anwendungen auf 2 GB an Adressraum für den virtuellen Arbeitsspeicher beschränkt werden. AWE wurde in SQL Server aktiviert. Später fügt der Systemadministrator 16 GB Arbeitsspeicher hinzu, während der Computer ausgeführt wird. SQL Server erkennt den zusätzlichen Arbeitsspeicher sofort und kann diesen bei Bedarf nutzen.
Weitere Informationen zum Verwenden von AWE finden Sie in der Dokumentation zu Windows Server 2003.
Ausführen mehrerer Instanzen von SQL Server mit AWE
Wenn Sie mehrere Instanzen von SQL Server auf demselben Computer ausführen und jede Instanz AWE-Arbeitsspeicher verwendet, sollten Sie sicherstellen, dass sich die Instanzen erwartungsgemäß verhalten.
Wenn auf Ihrem Server Windows Server 2003 ausgeführt wird, sollte jede Instanz die Einstellung min server memory aufweisen. In SQL Server unter Windows Server 2003 wird die dynamische Verwaltung des durch AWE zugeordneten Arbeitsspeichers unterstützt. Deshalb wird empfohlen, die Option min server memory für jede Instanz festzulegen. Der durch AWE zugeordnete Arbeitsspeicher kann nicht in die Auslagerungsdatei ausgelagert werden. Deshalb sollte die Summe der Werte für min server memory aller Instanzen niedriger als der insgesamt tatsächlich vorhandene Arbeitsspeicher auf dem Computer sein.
Die Option min server memory zwingt SQL Server nicht, beim Starten eine Mindestmenge von Arbeitsspeicher zu reservieren. Arbeitsspeicher wird bedarfsgesteuert basierend auf der Arbeitsauslastung der Datenbank zugeordnet. Wenn jedoch der Schwellenwert für min server memory erreicht ist, wird von SQL Server kein Arbeitsspeicher freigegeben, wenn dadurch der für SQL Server verfügbare Arbeitsspeicher unter diesen Wert sinken würde. Um sicherzustellen, dass jeder Instanz mindestens der für min server memory festgelegte Arbeitsspeicherumfang zugeordnet wird, sollten Sie einen Datenbankserver kurz nach dem Start laden. Während der normalen Serveraktivität variiert der pro Instanz verfügbare Arbeitsspeicher. Für jede Instanz ist jedoch niemals weniger Arbeitsspeicher als durch min server memory festgelegt verfügbar.
Sie können max server memory festlegen oder die Standardeinstellung übernehmen. Wenn Sie für max server memory die Standardeinstellung übernehmen, konkurrieren die SQL Server-Instanzen um Arbeitsspeicher.