SBS 2011: Speicher für Exchange & SQL begrenzen


Veröffentlicht von MOS-Computer GbR am 18.05.2015

Um es vorab einmal ganz klar zu sagen: Arbeitsspeicher ist dazu da, dass er genutzt werden soll! Wenn ein SBS 2011 16, 24 oder gar 32GB Arbeitsspeicher besitzt, so sollte er diesen auch voll ausnutzen können!

Gerade Exchange (store.exe) und SQL sind dafür bekannt, dass Sie sich über kurz oder lang auch alles an Arbeitsspeicher krallen, was da ist. Das dient der Performance und reduziert Zugriffe auf die Festplatten.

 

Sollte der Speicher anderweitig gebraucht und angefordert werden, so geben sowohl Exchange, als auch der SQL Server den in Beschlag genommen Speicher wieder frei! Sollte dies nicht geschehen, so ist ggf. die anfordernde Applikation fehlerhaft programmiert.

 

Dennoch gibt es u.U. Szenarien, wo man manuell den Speicherhunger von SQL und Exchange begrenzen, bzw. auf einen festen Wert festlegen möchte.

 

Die folgenden Angaben beziehen sich auf den SBS 2011 mit Exchange 2010 und SQL 2008R2. Nachfolgende Versionen sind hiervon ggf. abweichend und die Aussagen können somit nicht unbedingt übertragen werden!

 

 

Microsoft Exchange 2010 (store.exe - Informationsspeicher-Dienst):

 

Exchange 2010 arbeitet mit 32kb Speicherblöcken. Bei der Berechnung der maximal festzulegenden Größe muss diese daher unbedingt durch 32 geteilt werden.

Nehmen wir an, wir wollen Exchange maximal 16GB RAM zuteilen, so, wäre der in die Konfiguration einzutragende Wert 524288 (16*1024*1024/32=524288).

 

Nun öffnen wir den ADSI-Editor und wählen mit der rechten Maustate "Verbindung herstellen..." aus. Die Vorgaben sollten soweit ok sein. Unter "Verbindungspunkt" wird bei "Bekannten Namenskontext auswählen" noch "Konfiguration" ausgewählt und mit OK bestätigt.

 

Nun den folgenden Eintrag auswählen:

 

CN=Configuration, DC=Domain,DC=local

CN=Services

CN=Microsoft Exchange

CN="domain.local"

CN=Administrative Groups

CN="Exchange Administrative Group"

CN=Servers

CN="Servername"

CN=InformationStore

 

Hier mit der rechten Maustaste "Eigenschaften" auswählen und folgenden Punkt suchen:

 

msExchESEParamCacheSizeMax

 

Hier nun den oben ermittelten Wert eintragen (in unserem Fall 524288).

 

ACHTUNG: unter msExchESEParamCacheSizeMin muss ebenfalls ein Wert gesetzt werden, da die Eingabe bei CacheSizeMax sonst ignoriert wird!

Hier kann man nun z.B. den gleichen, oder einen kleineren, durch 32 teilbaren Wert hinterlegen.

 

Starten Sie danach den InformationStore (MicrosoftExchange-Informationsspeicher) neu, damit die Werte übernommen werden. Exchange sollte sich fortan an diese Grenzwerte halten.

 

 

 

SQL Server 2008R2 (sqlsrvr.exe):

 

Unter SBS 2011 gibt es standardmässig die folgenden drei SQL Datenbanken, die man ggf. im Verbrauch etwas zügeln möchte:

  • Windows Internal Database (MICROSOFT##SSEE)
  • SHAREPOINT
  • SBSMONITORING

Dazu starten wir zunächst das SQL Server Management Studio als Administrator.

Wählen Sie als nächstes die Instanz "SBSMONITORING" aus und klicken Sie auf Verbinden. Klicken Sie danach auf der linken Seite die Datenbank mit der rechten Maustaste an und wählen Sie den Punkt Eigenschaften. Unter Arbeitsspeicher können Sie beim Punkt "Maximaler Serverarbeitsspeicher" eine Größe hinterlegen (z.B. 512MB).

Mittels Datei / Trennen lösen Sie wieder die Verbindung zur Datenbank. Über Datei / Verbinden wiederholen Sie nun den Vorgang für die SHAREPOINT Datenbank.

 

Um die Windows Internal Database (MICROSOFT##SSEE) Datenbank zu öffnen, müssen Sie leicht anders vorgehen:

  • Wählen Sie Verbinden und geben folgendes als Servername ein:
  • \\.\pipe\mssql$microsoft##ssee\sql\query

Danach können Sie die Datenbank öffnen.

Achten Sie darauf, dass Sie hier als Wert mind. 1024MB hinterlegen!

 

Nach diesen Modifikationen haben Sie die RAM-Bremse bei Ihrem SBS 2011 gezogen.

 

 

 

Das könnte Sie vielleicht auch interessieren:



Zurück