Jump to content
Armin_M

SQL-Server nimmt sich zu wenig RAM

Recommended Posts

Hallo Leute,

sonst hatte ich immer das Problem, dass sich der SQL-Server allen RAM unter den Nagel gerissen hat, den er kriegen konnte.

Der SQL SVR 2014 STD EDTN lief bis Januar auf einem Server 2008 R2 (Teil des SBS 2011 Premium) ohne Probleme.

Seit wir ihn auf einem Server 2019 Std laufen haben, wird der verfügbare RAM nur maximal zur Hälte genutzt und die Anwendung, die die Datenbank nutzt reagiert sehr langsam.

Alle Maschinen sind bereits seit Jahren unter Vmware virtualisiert, der 2008R2 war auch eine Vm.

Ich habe bereits nachgesehen, ob eine Begrenzung des RAM konfiguriert ist, da ist kein Eintrag. Es läuft auch keine andere Software auf der VM, die ist rein für den SQL-Server reserviert.

Hat jemand eine Idee, wo ich suchen muss, um dem Problem auf die Spur zu kommen?

 

Gruß

Armin

Share this post


Link to post

Der Beitrag wurde bei Exchange gepostet.

 

Ich werde einen Mod bitten, diesen zu verschieben.

 

Was für eine SQL-Version ist installiert? :-)

Share this post


Link to post

Aktuell sind der Vm 32 GB RAM zugewiesen.

Aktuelle Auslastung kann ich erst morgen feststellen, da ich gerade Updates installiert und neu gestartet habe.

 

Gruß Armin

Sorry Nobbyaushb,

hatte vorher gesucht und nichts gefunden, dann einfach Thema erstellen gewählt.

 

zur Frage:

Product Version:          12.0.6118.4
Product Name:             SQL Server 2014
Product Level:            SP3
Product Edition:          Standard Edition (64-bit)

 

Gruß Armin

Share this post


Link to post
vor 42 Minuten schrieb Armin_M:

Product Version:          12.0.6118.4
Product Name:             SQL Server 2014
Product Level:            SP3
Product Edition:          Standard Edition (64-bit)

Du solltest aktualisieren, der SQL ist nicht ganz up2date: https://sqlserverbuilds.blogspot.com/#sql2014x

Share this post


Link to post

Moin,

 

vor 3 Stunden schrieb Armin_M:

wird der verfügbare RAM nur maximal zur Hälte genutzt

wie stellst du das denn fest?

 

Gruß, Nils

 

Share this post


Link to post

OK, hab ich getan:

Product Version:          12.0.6372.1
Product Name:             SQL Server 2014
Product Level:            SP3
Product Edition:          Standard Edition (64-bit)
 

Schauen wir mal, ob es hilft.

 

@NilsK: über den Ressourcenmonitor.

 

Gruß Armin

Share this post


Link to post

Moin,

 

wenn du versehentlich gesetzte Limits ausschließen kannst ... was bedeutet denn

vor 17 Stunden schrieb Armin_M:

wird der verfügbare RAM nur maximal zur Hälte genutzt

genau, insbesondere das "maximal"? Es sind also immer unterschiedliche Werte?

 

Wie viele vCPUs hat denn die VM? Vielleicht liegt der Engpass ja auch an der Stelle. Überhaupt gibt es bei "schlechte Performance in SQL" eine Unmenge an Möglichkeiten, woran es liegen kann. Hat sich parallel zum Server noch was geändert? Neue Version der Applikation oder sowas?

 

Gruß, Nils

 

Share this post


Link to post

Hallo

sind die Aktionen immer langsam oder gibt es große Schwankungen?

Z.B. wenn einige Zeit lang nichts in der Anwendung passiert ist?

 

G. MDD
 

Share this post


Link to post

Momentan ist die Situation etwas schwierig zu beurteilen, da viele Nutzer im Urlaub sind.

Ist für den Admin halt auch immer die Gelegenheit ein paar Dinge auf den Maschinen gerade zu rücken.

Aktuell nimmt sich der SQL-Server 7 GB von den vorhandenen 32 GB RAM, wird aber auch kaum beansprucht.

Für aussagekräftige Werte, muss ich wohl warten, bis der Server wieder Last bekommt.

Ich ackere mich außerdem gerade nochmal bei Vmware durch die Knowledgebase zum Thema SQL-Server. Die Empfehlungen sind aber eher schwammig gehalten und Neuerungen/Änderungen habe ich bisher auch nicht entdeckt.

Ich habe der Maschine jetzt mal 12 vCPUs zugeordnet, da bei 4 vCPUs immer wieder mal Spitzen mit 100% Auslastung auf allen CPUs aufgetreten sind, zwar immer nur für Sekunden, aber trotzdem für mich kein gutes Zeichen.

Physikalisch sind in der Hostmaschine 2 Xeon 6 Kerner verbaut, also 12 Cores und 24 logische Prozessoren. Auf dem Host läuft noch eine weitere VM mit 4 vCPUs, die hat aber nur Software installiert, die nicht viel Leistung und RAM erfordert.

Ich halte euch auf dem Laufenden, wie sich die Dinge entwickeln, wenn die User wieder aus dem Urlaub zurück sind.

 

Gruß Armin

Share this post


Link to post

Wir hatten manchmal ähnliche Effekte mit VMWare Servern wenn nicht Minimum an CPU und Memory zugewiesen wurde. 

Der Host wartet dann auf Last bis er der Machine Resourcen zuteilt und dieses Verhalten hat bei immer zu scheinbar langsamen Reaktionen geführt, außer bei Dauerlast, dann gings.

Vielleicht ist das ein Anhaltspunkt.

Da kann es sogar negativ sein dem Server zu viele CPU's zuzuordnen. Gibt einen schönen Artikel von Heise dazu.

 

Share this post


Link to post

Zu viele Ressourcen helfen bei virtuellen Umgebungen nicht immer und sind unter Umständen kontraproduktiv.

 

Vielleicht gibt es auch das Missveständniss, dass der SQL Server sich allen Ram nehmen würde den er finden kann.

Das stimmt so nicht. Es werden bestimmte Daten gecached, aber wenn nicht mehr nötig ist, wird auch nicht mehr Ram genutzt.

 

Wie groß ist / sind die Datenbank/en?

 

Wie ist das SQL Know How? Hier muss man eher tief in den SQL Server schauen. Die Anfragen anschauen, die Statistiken,...

Share this post


Link to post

Moin,

 

vor 9 Minuten schrieb Armin_M:

Ich habe der Maschine jetzt mal 12 vCPUs zugeordnet

*hust* das ist mit Sicherheit enorm überdimensioniert. Vor allem dann, wenn der Host auch "nur" 12 Cores hat. "Viel hilft viel" ist selten eine gute Idee. Dreh das mal wieder drastisch runter. Laste nie die Host-CPUs mit einzelnen VMs voll aus, sonst kann der Host seine Arbeit nicht sinnvoll tun.

 

Ich hatte nur deshalb nach vCPUs gefragt, um zu schauen, ob vielleicht nur eine einzige zugewiesen ist. Dann hätte das ein Engpass sein können. Schon vier vCPUs sind hoch gegriffen für einen Server, wenn der wenig zu tun hat. Dass CPUs auch mal zu 100% ausgelastet ist, ist völlig normal, dafür sind sie ja da. Eine CPU kann in Wirklichkeit auch nur nichts tun oder beschäftigt sein. Eine hohe Auslastung ist nur dann ein Problem, wenn sie sehr lange anhält - und dann spreche ich bei "hoch" von über 80%. Das bedeutet dann, dass die CPU in der betrachteten Zeit in 80% der Messungen was zu tun hatte. Gleichzeitig heißt es aber auch, dass sie in diesem Zeitraum bei 20% der Messungen eben nichts gemacht hat.

 

Gruß, Nils

 

Share this post


Link to post

Ist auch nicht für den Dauerbetrieb gedacht. Will nur mal die Auswirkungen testen. Wenn ich mir den Host im vsphereclient ansehe, dann langweilen sich alle CPUs, es werden trotz dieser Einstellung gerade mal 811 MHz von verfügbaren 27GHz genutzt (Anhang).

 

Ich werde mal die Rückmeldungen abwarten und dann mal den Ansatz von MDD probieren und der VM Mindestwerte zuweisen, dann natürlich wieder mit den 4 vCPUs, die die Maschine bisher auch hatte.

Die Datenbank hat aktuell 25GB. Ist also eher klein.

 

Bei der Anwendung gab es natürlich, wie bei fast jeder Software, ein paar Updates, seit wir zu 2019 Server gewechselt sind.

 

Mein SQL-Know-How ist leider nicht so gut, wie ich gerne möchte, einfach weil ich zu selten damit zu tun habe.

 

vhost.jpg

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


Werbepartner:



×
×
  • Create New...