Frage Wie beschränke ich MS SQL Server Speicherverbrauch?


Ich habe gehört, MS SQL Server nimmt so viel RAM wie möglich auf, um Ergebnisse zwischenzuspeichern. Nun, es bleibt nicht genug Verhandlungsspielraum für den Arbeitsspeicher unseres kleinen Servers.

Wie ändere ich die Einstellungen, um die Menge an RAM zu begrenzen, die es verwenden kann?

MS SQL Server läuft unter Windows Server 2008.


19
2018-05-09 22:11


Ursprung


@DavidSchwartz: Ich denke, Sie werden feststellen, dass viele MS SQL DBAs die Menge an RAM begrenzen, die die DBE verwenden kann. Dies hat oft Auswirkungen auf die Leistung von anderen Systemen, die auf dem System ausgeführt werden. - wfaulk
@wfault: "Standardmäßig kann SQL Server die Speicheranforderungen basierend auf verfügbaren Systemressourcen dynamisch ändern."Viele Leute mögen es, sich mit Dingen zu beschäftigen, nur um mit ihnen zu spielen, aber was sie tatsächlich tun, ist die Fähigkeit des Servers, sich auf sich ändernde Lasten einzustellen. Wenn es nicht kaputt ist, kann man es nicht reparieren. Dies wird am häufigsten von Leuten gemacht, die gerne viel freien Speicher sehen, um sich gut zu fühlen, aber tatsächlich ist jeder Speicher, der frei ist, auch ungenutzt - das heißt, verschwendet. - David Schwartz
@DavidSchwartz: Ich verstehe, woher du kommst, und in jeder anderen Situation würde ich dir zustimmen, aber MS SQL scheint das nicht wirklich zu optimieren, IME. - wfaulk
Es war wirklich pleite, da es den Server zum Stillstand bringen würde ... - FlavorScape
Ich stimme diesem Typ zu: sqlservercentral.com/blogs/glennberry/2009/10/29/... - Daniel Dolz


Antworten:


Von So konfigurieren Sie Speicheroptionen mit SQL Server Management Studio:

Verwenden Sie die zwei Serverspeicheroptionen, min Serverspeicher und maximaler Serverspeicher, um die Speichermenge (in Megabyte) neu zu konfigurieren, die vom SQL Server Memory Manager für eine Instanz von SQL Server verwaltet wird.

  1. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Server und wählen Sie Eigenschaften.
  2. Drücke den Erinnerung Knoten.
  3. Unter ServerspeicheroptionenGeben Sie den gewünschten Betrag ein Minimaler Serverspeicher und Maximaler Serverspeicher.

Sie können dies auch in T-SQL mit den folgenden Befehlen tun (Beispiel):

exec sp_configure 'max server memory', 1024
reconfigure

22
2018-05-09 22:43



sqlservercentral.com/blogs/glennberry/2009/10/29/... - Daniel Dolz


So beschränken Sie den MS SQL-Dienstspeicherverbrauch:

Legen Sie "Max Server-Speicher" in SQL Server Management Studio fest

  1. Jetzt werden wir die Option "max server memory" setzen, um die Speichernutzung durch SQL Server zu begrenzen. Wir können dies tun, indem wir mit der rechten Maustaste auf unsere Instanz klicken und "Eigenschaften" wählen.

  2. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Server und wählen Sie Eigenschaften. enter image description here

  3. Klicken Sie auf den Speicherknoten wie unten gezeigt:

enter image description here 4. Geben Sie unter Serverspeicheroptionen den gewünschten Betrag für den maximalen Serverspeicher ein. Wie Sie sehen können, richten wir den maximalen Serverspeicher auf 4096 MB (d. H. 4 GB) ein.

enter image description here

So beschränken Sie den MS SQL-Dienstspeicherverbrauch: 

Wir können "max server memory" auch mit einem T-SQL-Skript einstellen:

Im folgenden Beispiel wird die Option für den maximalen Serverspeicher auf 4 GB festgelegt:

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

Ref: https://technet.microsoft.com/en-us/library/ms191144(v=sql.105).aspx


1
2018-02-28 21:02