Konfigurationsoptionen für den ServerarbeitsspeicherServer Memory Configuration Options

Gilt für: JaSQL Server NeinAzure SQL-Datenbank NeinAzure Synapse Analytics (SQL DW) NeinParallel Data Warehouse APPLIES TO: yesSQL Server noAzure SQL Database noAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Mit den beiden Arbeitsspeicheroptionen für den Server, Min. Serverarbeitsspeicher und Max. Serverarbeitsspeicher, können Sie die Größe des Arbeitsspeichers (in Megabytes) umkonfigurieren, der vom SQL Server-Speicher-Manager für einen von einer Instanz von SQL ServerSQL Serververwendeten SQL Server-Prozess verwaltet wird.Use the two server memory options, min server memory and max server memory, to reconfigure the amount of memory (in megabytes) that is managed by the SQL Server Memory Manager for a SQL Server process used by an instance of SQL ServerSQL Server.

Die Standardeinstellung für Minimaler Serverarbeitsspeicher ist 0; für Maximaler Serverarbeitsspeicher liegt der Standardwert bei 2.147.483.647 Megabyte (MB).The default setting for min server memory is 0, and the default setting for max server memory is 2,147,483,647 megabytes (MB). Standardmäßig können die Arbeitsspeicheranforderungen von SQL ServerSQL Server anhand der verfügbaren Systemressourcen dynamisch geändert werden.By default, SQL ServerSQL Server can change its memory requirements dynamically based on available system resources. Weitere Informationen finden Sie unter Dynamische Arbeitsspeicherverwaltung.For more information, see dynamic memory management.

Die minimal zulässige Arbeitsspeichermenge für Max. Serverarbeitsspeicher beträgt 128 MB.The minimum memory amount allowable for max server memory is 128 MB.

Wichtig

Die Festlegung von Max. Serverarbeitsspeicher auf einen zu hohen Wert kann dazu führen, dass eine einzelne Instanz von SQL ServerSQL Server möglicherweise in Konkurrenz mit anderen SQL ServerSQL Server-Instanzen gerät, die auf dem gleichen Host aufgeführt werden.Setting max server memory value too high can cause a single instance of SQL ServerSQL Server might have to compete for memory with other SQL ServerSQL Server instances hosted on the same host. Die Festlegung auf einen zu niedrigen Wert kann jedoch zu erheblichem Arbeitsspeichermangel und entsprechenden Leistungsproblemen führen.However, setting this value too low could cause significant memory pressure and performance problems. Das Festlegen von Max. Serverarbeitsspeicher auf den Minimalwert kann sogar den Start von SQL ServerSQL Server verhindern.Setting max server memory to the minimum value can even prevent SQL ServerSQL Server from starting. Wenn SQL ServerSQL Server nach dem Ändern dieser Option nicht gestartet werden kann, müssen Sie den Start mithilfe der Startoption -f durchführen und die Option Max. Serverarbeitsspeicher auf ihren vorherigen Wert zurücksetzen.If you cannot start SQL ServerSQL Server after changing this option, start it using the -f startup option and reset max server memory to its previous value. Weitere Informationen finden Sie unter Startoptionen für den Datenbank-Engine-Dienst.For more information, see Database Engine Service Startup Options.

SQL ServerSQL Server kann Arbeitsspeicher dynamisch verwenden. Sie können die Speicheroptionen jedoch auch manuell festlegen und den Umfang des für SQL ServerSQL Server zugreifbaren Arbeitsspeichers einschränken.can use memory dynamically; however, you can set the memory options manually and restrict the amount of memory that SQL ServerSQL Server can access. Bevor Sie den Umfang des Arbeitsspeichers für SQL ServerSQL Server festlegen, sollten Sie die geeignete Arbeitsspeichereinstellung ermitteln. Ziehen Sie dazu vom gesamten physischen Speicher den Arbeitsspeicher ab, der für das Betriebssystem, für nicht durch die Einstellung „max_server_memory“ gesteuerte Speicherbelegungen und für alle weiteren Instanzen von SQL ServerSQL Server erforderlich ist. (Falls der Computer nicht vollständig für SQL ServerSQL Server reserviert ist, müssen Sie zusätzlich auch den für andere Verwendungen des Systems benötigten Arbeitsspeicher abziehen.)Before you set the amount of memory for SQL ServerSQL Server, determine the appropriate memory setting by subtracting, from the total physical memory, the memory required for the OS, memory allocations not controlled by the max_server_memory setting, and any other instances of SQL ServerSQL Server (and other system uses, if the computer is not wholly dedicated to SQL ServerSQL Server). Die Differenz entspricht der maximalen Arbeitsspeichergröße, die Sie der aktuellen SQL ServerSQL Server-Instanz zuweisen können.This difference is the maximum amount of memory you can assign to the current SQL ServerSQL Server instance.

Manuelles Festlegen der ArbeitsspeicheroptionenSetting the memory options manually

Sie können die Serveroptionen Min. Serverarbeitsspeicher und Max. Serverarbeitsspeicher so festlegen, dass ein großer Bereich von Arbeitsspeicherwerten überdeckt wird.The server options min server memory and max server memory can be set to span a range of memory values. Diese Methode ist vor allem dann sinnvoll, wenn der System- oder Datenbankadministrator eine Instanz von SQL ServerSQL Server in Abhängigkeit von den Arbeitsspeicheranforderungen anderer Anwendungen oder weiterer Instanzen von SQL ServerSQL Server, die auf demselben Computer ausgeführt werden, konfigurieren möchte.This method is useful for system or database administrators to configure an instance of SQL ServerSQL Server in conjunction with the memory requirements of other applications, or other instances of SQL ServerSQL Server that run on the same host.

Hinweis

Bei min server memory und max server memory handelt es sich um erweiterte Optionen.The min server memory and max server memory options are advanced options. Wenn Sie diese Einstellungen mithilfe der gespeicherten Systemprozedur sp_configure ändern, können Sie diese nur ändern, wenn Erweiterte Optionen anzeigen auf 1 festgelegt ist.If you are using the sp_configure system stored procedure to change these settings, you can change them only when show advanced options is set to 1. Diese Einstellungen treten sofort ohne Neustart des Servers in Kraft.These settings take effect immediately without a server restart.

Mithilfe der Konfigurationsoption min_server_memory wird sichergestellt, dass für den SQL ServerSQL Server-Speicher-Manager einer Instanz von SQL ServerSQL Server eine Mindestmenge an Arbeitsspeicher verfügbar ist.Use min_server_memory to guarantee a minimum amount of memory available to the SQL ServerSQL Server Memory Manager for an instance of SQL ServerSQL Server. SQL ServerSQL Server Allerdings wird die unter Min. Serverarbeitsspeicher angegebene Arbeitsspeichermenge von nicht gleich beim Start zugeordnet.will not immediately allocate the amount of memory specified in min server memory on startup. Sobald der Wert für die Speicherauslastung aufgrund der Clientauslastung erreicht ist, kann SQL ServerSQL Server nur dann Arbeitsspeicher freigeben, wenn der Wert für Min. Serverarbeitsspeicher reduziert wird.However, after memory usage has reached this value due to client load, SQL ServerSQL Server cannot free memory unless the value of min server memory is reduced. Wenn beispielsweise mehrere Instanzen von SQL ServerSQL Server gleichzeitig auf dem gleichen Host ausgeführt werden können, legen Sie den Parameter „min_server_memory“ anstelle von „max_server_memory“ fest, um Arbeitsspeicher für eine Instanz zu reservieren.For example, when several instances of SQL ServerSQL Server can exist concurrently in the same host, set the min_server_memory parameter instead of max_server_memory for the purpose of reserving memory for an instance. Ferner ist das Festlegen eines Werts für „min_server_memory“ in einer virtualisierten Umgebung entscheidend, um sicherzustellen, dass Arbeitsspeichermangel beim zugrundeliegenden Host nicht zu dem Versuch führt, Arbeitsspeicher aus dem Pufferpool eines virtuellen SQL ServerSQL Server-Gastcomputers jenseits dessen abzuzweigen, was für eine vertretbare Leistung erforderlich ist.Also, setting a min_server_memory value is essential in a virtualized environment to ensure memory pressure from the underlying host does not attempt to deallocate memory from the buffer pool on a guest SQL ServerSQL Server virtual machine (VM) beyond what is needed for acceptable performance.

Hinweis

Allerdings kann nicht sichergestellt werden, dass SQL ServerSQL Server die in min server memory angegebene Arbeitsspeichermenge zuordnet.SQL ServerSQL Server is not guaranteed to allocate the amount of memory specified in min server memory. Wenn die in min server memoryangegebene Arbeitsspeichermenge aufgrund der Serverlast zu keinem Zeitpunkt zugeordnet werden muss, wird SQL ServerSQL Server mit weniger Arbeitsspeicher ausgeführt.If the load on the server never requires allocating the amount of memory specified in min server memory, SQL ServerSQL Server will run with less memory.

Verwenden Sie max_server_memory, um sicherzustellen, dass beim Betriebssystem kein nachteiliger Arbeitsspeichermangel eintritt.Use max_server_memory to guarantee the OS does not experience detrimental memory pressure. Um den maximalen Serverarbeitsspeicher zu konfigurieren, überwachen Sie den Gesamtverbrauch des SQL ServerSQL Server-Prozesses, um die Arbeitsspeicheranforderungen zu bestimmen.To set max server memory configuration, monitor overall consumption of the SQL ServerSQL Server process in order to determine memory requirements. Hier folgen genauere Angaben für diese Berechnungen für eine Einzelinstanz:To be more accurate with these calculations for a single instance:

  • Reservieren Sie vom gesamten Arbeitsspeicher des Betriebssystems 1 GB–4 GB für das Betriebssystem selbst.From the total OS memory, reserve 1GB-4GB to the OS itself.
  • Subtrahieren Sie anschließend das Äquivalent der potenziellen SQL ServerSQL Server-Arbeitsspeicherbelegungen außerhalb des Steuerelements Max. Serverarbeitsspeicher, bestehend aus Stapelgröße 1 * max. Anzahl der berechneten Arbeitsthreads 2 .Then subtract the equivalent of potential SQL ServerSQL Server memory allocations outside the max server memory control, which is comprised of stack size 1 * calculated max worker threads 2. Der Rest sollte die Einstellung „max_server_memory“ für die Einrichtung einer einzelnen Instanz bilden.What remains should be the max_server_memory setting for a single instance setup.

1 Informationen zu den Threadstapelgrößen der einzelnen Architekturen finden Sie im Handbuch zur Architektur der Speicherverwaltung.1 Refer to the Memory Management Architecture guide for information on thread stack sizes per architecture.

2 Informationen zu den standardmäßig berechneten Arbeitsthreads für eine bestimmte Anzahl kategorisierter CPUs auf dem aktuellen Host finden Sie auf der Dokumentationsseite zum Konfigurieren der Serverkonfigurationsoption Maximale Anzahl von Arbeitsthreads.2 Refer to the documentation page on how to Configure the max worker threads Server Configuration Option, for information on the calculated default worker threads for a given number of affinitized CPUs in the current host.

So konfigurieren Sie Arbeitsspeicheroptionen mithilfe von SQL Server Management StudioSQL Server Management StudioHow to configure memory options using SQL Server Management StudioSQL Server Management Studio

Mit den beiden Arbeitsspeicheroptionen für den Server, Min. Serverarbeitsspeicher und Max. Serverarbeitsspeicher, können Sie den vom SQL ServerSQL Server-Speicher-Manager für eine Instanz von SQL ServerSQL Server verwalteten Umfang des Arbeitsspeichers (in MB) umkonfigurieren.Use the two server memory options, min server memory and max server memory, to reconfigure the amount of memory (in megabytes) managed by the SQL ServerSQL Server Memory Manager for an instance of SQL ServerSQL Server. Standardmäßig können die Arbeitsspeicheranforderungen von SQL ServerSQL Server anhand der verfügbaren Systemressourcen dynamisch geändert werden.By default, SQL ServerSQL Server can change its memory requirements dynamically based on available system resources.

So legen Sie eine feste Arbeitsspeichergröße fest:To set a fixed amount of memory:

  1. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Server, und wählen Sie Eigenschaften aus.In Object Explorer, right-click a server and select Properties.

  2. Klicken Sie auf den Speicher -Knoten.Click the Memory node.

  3. Geben Sie unter Arbeitsspeicheroptionen für den Serverden gewünschten Wert für Minimaler Serverarbeitsspeicher und Maximaler Serverarbeitsspeicher ein.Under Server Memory Options, enter the same amount that you want for Minimum server memory and Maximum server memory.

    Verwenden Sie die Standardeinstellungen, damit SQL ServerSQL Server die Arbeitsspeicheranforderungen auf der Grundlage der verfügbaren Systemressourcen dynamisch ändert.Use the default settings to allow SQL ServerSQL Server to change its memory requirements dynamically based on available system resources. Es wird empfohlen, einen Wert für Max. Serverarbeitsspeicher festzulegen, wie oben ausführlich beschrieben.It is recommended to set a max server memory as detailed above.

Sperren von Seiten im Speicher (LPIM)Lock Pages in Memory (LPIM)

Mit dieser Windows-Richtlinie werden die Konten bestimmt, die einen Prozess zum Speichern von Daten im physischen Speicher verwenden können, um das systemgesteuerte Auslagern der Daten in den virtuellen Arbeitsspeicher zu vermeiden.This Windows policy determines which accounts can use a process to keep data in physical memory, preventing the system from paging the data to virtual memory on disk. Durch Sperren von Seiten im Arbeitsspeicher können Sie die Reaktionsfähigkeit des Servers möglicherweise auch nach Auslagerung von Arbeitsspeicherdaten auf die Festplatte aufrechterhalten.Locking pages in memory may keep the server responsive when paging memory to disk occurs. Die Option Sperren von Seiten im Speicher wird für Instanzen der SQL ServerSQL Server Standard Edition und höher auf ON gesetzt, wenn dem Konto mit den Privilegien zum Ausführen von "sqlserver.exe" das Windows-Benutzerrecht Sperren von Seiten im Speicher (Lock Pages in Memory, LPIM) erteilt wurde.The Lock Pages in Memory option is set to ON in instances of SQL ServerSQL Server Standard edition and higher when the account with privileges to run sqlservr.exe has been granted the Windows Lock Pages in Memory (LPIM) user right.

Entfernen Sie zum Deaktivieren der Option Sperren von Seiten im Speicher für SQL ServerSQL Server das Benutzerrecht Sperren von Seiten im Speicher für das Konto mit der Ausführungsberechtigung für sqlserver.exe (das SQL ServerSQL Server-Startkonto).To disable the Lock Pages In Memory option for SQL ServerSQL Server, remove the Lock Pages in Memory user right for the account with privileges to run sqlservr.exe (the SQL ServerSQL Server startup account) startup account.

Das Festlegen dieser Option wirkt sich nicht auf die dynamische Arbeitsspeicherveraltung von SQL ServerSQL Server aus und ermöglicht ein Anwachsen oder Schrumpfen aufgrund der Anforderungen anderer Arbeitsspeicherclerks.Setting this option does not affect SQL ServerSQL Server dynamic memory management, allowing it to expand or shrink at the request of other memory clerks. Bei der Verwendung des Benutzerrechts Sperren von Seiten im Speicher empfiehlt es sich, einen oberen Grenzwert für Max. Serverarbeitsspeicher festzulegen, wie oben ausführlich beschrieben.When using the Lock Pages in Memory user right it is recommended to set an upper limit for max server memory as detailed above.

Wichtig

Das Festlegen dieser Option sollte nur bei Bedarf erfolgen, nämlich wenn es Anzeichen gibt, dass der sqlservr-Prozess ausgelagert wird. In diesem Fall wird im Fehlerprotokoll der Fehler 17890 gemeldet, ähnlich wie im folgenden Beispiel: A significant part of sql server process memory has been paged out. This may result in a performance degradation. Duration: #### seconds. Working set (KB): ####, committed (KB): ####, memory utilization: ##%.Setting this option should only be used when necessary, namely if there are signs that sqlservr process is being paged out. In this case, error 17890 will be reported in the Errorlog, resembling the below example: A significant part of sql server process memory has been paged out. This may result in a performance degradation. Duration: #### seconds. Working set (KB): ####, committed (KB): ####, memory utilization: ##%. Ab SQL Server 2012 (11.x)SQL Server 2012 (11.x) wird das Ablaufverfolgungsflag 845 nicht von der Standard Edition benötigt, um gesperrte Seiten zu verwenden.Starting with SQL Server 2012 (11.x)SQL Server 2012 (11.x), trace flag 845 is not needed for Standard Edition to use Locked Pages.

Aktivieren des Sperrens von Seiten im SpeicherTo enable Lock Pages in Memory

So aktivieren Sie die Option "Sperren von Seiten im Speicher":To enable the lock pages in memory option:

  1. Klicken Sie im Menü Start auf Ausführen.On the Start menu, click Run. Geben Sie gpedit.msc im Feld Öffnenein.In the Open box, type gpedit.msc.

    Das Dialogfeld Gruppenrichtlinie wird geöffnet.The Group Policy dialog box opens.

  2. Erweitern Sie in der Konsole Gruppenrichtlinie die Option Computerkonfigurationund dann Windows-Einstellungen.On the Group Policy console, expand Computer Configuration, and then expand Windows Settings.

  3. Erweitern Sie Sicherheitseinstellungenund dann Lokale Richtlinien.Expand Security Settings, and then expand Local Policies.

  4. Wählen Sie den Ordner Zuweisen von Benutzerrechten aus.Select the User Rights Assignment folder.

    Die Richtlinien werden im Detailbereich angezeigt.The policies will be displayed in the details pane.

  5. Doppelklicken Sie im Detailbereich auf Sperren von Seiten im Speicher.In the pane, double-click Lock pages in memory.

  6. Fügen Sie im Dialogfeld Lokale Sicherheitseinstellung das Konto mit Privilegien zum Ausführen von „sqlservr.exe“ (das SQL ServerSQL Server-Startkonto) hinzu.In the Local Security Policy Setting dialog box, add the account with privileges to run sqlservr.exe (the SQL ServerSQL Server startup account).

Ausführen mehrerer Instanzen von SQL ServerSQL ServerRunning multiple instances of SQL ServerSQL Server

Wenn Sie mehrere Instanzen von Datenbank-EngineDatabase Engineausführen, stehen Ihnen zum Verwalten des Arbeitsspeichers drei Möglichkeiten zur Verfügung:When you are running multiple instances of the Datenbank-EngineDatabase Engine, there are three approaches you can use to manage memory:

  • Verwenden Sie Max. Serverarbeitsspeicher, um die Speicherbelegung zu steuern, wie oben ausführlich dargestellt.Use max server memory to control memory usage, as detailed above. Richten Sie für jede Instanz Maximaleinstellungen ein, und achten Sie darauf, dass der gesamte zugeordnete Arbeitsspeicher nicht größer ist als der insgesamt auf dem Computer verfügbare physische Speicher.Establish maximum settings for each instance, being careful that the total allowance is not more than the total physical memory on your machine. Es empfiehlt sich, den jeder Instanz zugeordneten Arbeitsspeicher proportional zur erwarteten Arbeitsauslastung oder Datenbankgröße zu bemessen.You might want to give each instance memory proportional to its expected workload or database size. Dieser Ansatz hat den Vorteil, dass beim Starten neuer Prozesse oder Instanzen sofort freier Arbeitsspeicher für die Prozesse oder Instanzen zur Verfügung steht.This approach has the advantage that when new processes or instances start up, free memory will be available to them immediately. Der Nachteil ist, wenn nicht alle Instanzen ausgeführt werden, dass keine der laufenden Instanzen den verbleibenden freien Arbeitsspeicher nutzen kann.The drawback is that if you are not running all of the instances, none of the running instances will be able to utilize the remaining free memory.

  • Verwenden Sie Min. Serverarbeitsspeicher, um die Speicherbelegung zu steuern, wie oben ausführlich dargestellt.Use min server memory to control memory usage, as detailed above. Richten Sie für jede Instanz Minimaleinstellungen ein, sodass die Summe dieser Mindestwerte 1 bis 2 GB unterhalb des gesamten physischen Speichers auf dem Computer liegt.Establish minimum settings for each instance, so that the sum of these minimums is 1-2 GB less than the total physical memory on your machine. Auch bei dieser Methode empfiehlt es sich, die Werte proportional zu der für die jeweilige Instanz erwarteten Arbeitsauslastung zu bemessen.Again, you may establish these minimums proportionately to the expected load of that instance. Dieser Ansatz hat den Vorteil, dass die laufenden Instanzen den verbleibenden freien Arbeitsspeicher nutzen können, wenn nicht alle Instanzen gleichzeitig ausgeführt werden.This approach has the advantage that if not all instances are running at the same time, the ones that are running can use the remaining free memory. Diese Vorgehensweise ist auch dann sinnvoll, wenn auf dem Computer ein weiterer speicherintensiver Prozess vorhanden ist, da sichergestellt ist, dass SQL ServerSQL Server zumindest eine angemessene Menge an Arbeitsspeicher erhält.This approach is also useful when there is another memory-intensive process on the computer, since it would insure that SQL ServerSQL Server would at least get a reasonable amount of memory. Der Nachteil besteht darin, dass es beim Starten einer neuen Instanz (oder eines anderen Prozesses) ggf. etwas dauern kann, bis die laufenden Instanzen Speicher freigeben. Dies trifft vor allem dann zu, wenn die Instanzen zuerst noch geänderte Seiten in ihre jeweiligen Datenbanken zurückschreiben müssen.The drawback is that when a new instance (or any other process) starts, it may take some time for the running instances to release memory, especially if they must write modified pages back to their databases to do so.

  • Unternehmen Sie nichts (dies wird nicht empfohlen).Do nothing (not recommended). Die ersten Instanzen, denen eine Arbeitslast zugewiesen wird, weisen sich den gesamten Arbeitsspeicher zu.The first instances presented with a workload will tend to allocate all of memory. Instanzen im Leerlauf oder Instanzen, die später gestartet werden, müssen in dieser Situation u. U. mit einer minimalen Menge an Arbeitsspeicher auskommen.Idle instances, or instances started later, may end up running with only a minimal amount of memory available. SQL ServerSQL Server versucht nicht, die Speicherauslastung über mehrere Instanzen hinweg auszugleichen.makes no attempt to balance memory usage across instances. Alle Instanzen antworten jedoch auf Signale der Windows-Arbeitsspeicherbenachrichtigung, um ihren Speicherbedarf anzupassen.All instances will, however, respond to Windows Memory Notification signals to adjust the size of their memory footprint. Windows nimmt keinen Speicherausgleich bei Anwendungen vor, die über eine Arbeitsspeicherbenachrichtigungs-API verfügen.Windows does not balance memory across applications with the Memory Notification API. Es erfolgt lediglich eine globale Rückmeldung über die Verfügbarkeit von Arbeitsspeicher auf dem System.It merely provides global feedback as to the availability of memory on the system.

Sie können diese Einstellungen ohne Neustart der Instanzen ändern. Dadurch können Sie problemlos mit verschiedenen Einstellungen experimentieren, um die für Ihr Nutzungsmuster am besten geeigneten Einstellungen herauszufinden.You can change these settings without restarting the instances, so you can easily experiment to find the best settings for your usage pattern.

Bereitstellen der maximalen Menge von Arbeitsspeicher für SQL ServerProviding the maximum amount of memory to SQL Server

In allen Editionen von SQL ServerSQL Server kann der Arbeitsspeicher bis zum Speicherplatzlimit des virtuellen Adressraums des Prozesses konfiguriert werden.Memory can be configured up to the process virtual address space limit in all SQL ServerSQL Server editions. Weitere Informationen finden Sie unter Memory Limits for Windows and Windows Server Releases (Grenzwerte für den Arbeitsspeicher für Versionen von Windows und Windows Server).For more information, see Memory Limits for Windows and Windows Server Releases.

BeispieleExamples

Beispiel A: Festlegen der Option „Max. Serverarbeitsspeicher“ auf 4 GB.Example A. Set the max server memory option to 4 GB.

Im folgenden Beispiel wird die Option max server memory auf 4 GB festgelegt.The following example sets the max server memory option to 4 GB. Beachten Sie, dass im Beispiel (MB) ausgelassen wird, obwohl sp_configure den Namen der Option als max server memory (MB) festlegt.Note that although sp_configure specifies the name of the option as max server memory (MB), the example demonstrates omitting the (MB).

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'max server memory', 4096;
GO
RECONFIGURE;
GO

Dadurch wird eine Anweisung ausgegeben ähnlich wie:This will output a statement similar to:

Die Konfigurationsoption 'max server memory (MB)' (Max. Serverarbeitsspeicher (MB)) wurde von 2147483647 in 4096 geändert.Configuration option 'max server memory (MB)' changed from 2147483647 to 4096. Führen Sie zum Installieren die RECONFIGURE-Anweisung aus.Run the RECONFIGURE statement to install.

Beispiel B: Bestimmen der aktuellen SpeicherbelegungExample B. Determining Current Memory Allocation

Mit der folgenden Abfrage werden Informationen zur aktuellen Speicherbelegung zurückgegeben.The following query returns information about currently allocated memory.

SELECT 
  physical_memory_in_use_kb/1024 AS sql_physical_memory_in_use_MB, 
    large_page_allocations_kb/1024 AS sql_large_page_allocations_MB, 
    locked_page_allocations_kb/1024 AS sql_locked_page_allocations_MB,
    virtual_address_space_reserved_kb/1024 AS sql_VAS_reserved_MB, 
    virtual_address_space_committed_kb/1024 AS sql_VAS_committed_MB, 
    virtual_address_space_available_kb/1024 AS sql_VAS_available_MB,
    page_fault_count AS sql_page_fault_count,
    memory_utilization_percentage AS sql_memory_utilization_percentage, 
    process_physical_memory_low AS sql_process_physical_memory_low, 
    process_virtual_memory_low AS sql_process_virtual_memory_low
FROM sys.dm_os_process_memory;  

Beispiel C: Bestimmen eines Werts für die Option „Max. Serverarbeitsspeicher (MB)“Example C. Determining value for 'max server memory (MB)'

Die folgende Abfrage gibt Informationen zum aktuell konfigurierten Wert und dem von SQL Server verwendeten Wert zurück.The following query returns information about the currently configured value and the value in use by SQL Server. Diese Abfrage gibt Ergebnisse zurück, unabhängig davon, ob für „Erweiterte Optionen anzeigen“ „true“ gilt.This query will return results regardless of whether 'show advanced options' is true.

SELECT c.value, c.value_in_use
FROM sys.configurations c WHERE c.[name] = 'max server memory (MB)'

Weitere InformationenSee Also

Handbuch zur Architektur der Speicherverwaltung Memory Management Architecture Guide
Überwachen und Optimieren der Leistung Monitor and Tune for Performance
RECONFIGURE (Transact-SQL) RECONFIGURE (Transact-SQL)
Serverkonfigurationsoptionen (SQL Server) Server Configuration Options (SQL Server)
sp_configure (Transact-SQL) sp_configure (Transact-SQL)
Startoptionen für den Datenbank-Engine-Dienst Database Engine Service Startup Options
Editionen und unterstützten Funktionen von SQL Server 2016 Editions and supported features of SQL Server 2016
Editionen und unterstützten Funktionen von SQL Server 2017 Editions and supported features of SQL Server 2017
Editionen und unterstützte Funktionen von SQL Server 2017 unter Linux Editions and supported features of SQL Server 2017 on Linux
Memory Limits for Windows and Windows Server Releases (Grenzwerte für den Arbeitsspeicher für Versionen von Windows und Windows Server).Memory Limits for Windows and Windows Server Releases