none
RAM Auslastung RRS feed

  • Frage

  • Hallo,

    es handelt sich um ein W2k8 R2 64 System und 8 GB Ram mit einer SQL 2005 und einer SQL Express Datenbank. Das System füllt den RAM dermassen das ich es in unbestimmten Abständen (alle 2-3 Wochen) durchstarten muss. Ein Virenscann (Kaspersky) prüft das System einmal die Woche. Die Größe der Auslagerungsdatei beträgt von/bis 12288 GB und befindet sich auf LW C. Mit Taskmanger und Prozessexplorer konnte ich es nicht feststellen welches Programm den Ram auslastet. Die Datenbanken selbst laufen bei ca 1000 Mb und 300 Mb. Nach Neustart läuft der Server wieder bei ca 3 GB. Ich hoffe Ihr kennt das Problem. Ich habe bereits an FreeMem.vbs gedacht....

    Gruss, Rob

    Montag, 27. September 2010 10:38

Alle Antworten

  • Hi Rob,
     
    > es handelt sich um ein W2k8 R2 64 System und 8 GB Ram mit einer SQL 2005
    > und einer
    > SQL Express Datenbank. Das System füllt den RAM dermassen
     
    Definiere: "Das System füllt den RAM dermassen"
     
    Hinweis: Alles bis 8GB und ein wenig darüber ist so gewollt und in bester
    Ordnung (wenn keine Performance-Einbussen ersichtlich sind).
     
    Merke: RAM ist dafür gekauft (und entwickelt) worden, um benutzt zu werden.
    Und der SQL-Server (ebenso wie Exchange und ähnliche Anwendungen) machen die
    dyn. Speicherverwaltung zu Performancesteigerung (da nicht alles erneut von
    den Faktor 100-1000 mal langsameren Festplatten gelesen werden muss) richtig
    gut.
     
    --
    Tobias Redelberger
    StarNET Services (HomeOffice)
    Frankfurter Allee 193
    D-10365 Berlin
    Tel: +49 (30) 86 87 02 678
    Mobil: +49 (163) 84 74 421
    Email: T.Redelberger@starnet-services.net
    Web: http://www.starnet-services.net
     
     
     
    Montag, 27. September 2010 11:46
  • Hi,

    was zeigt Taskmanager/Leistung unter "Physikalischer Speicher/verfügbar"?

    Was zeigt Taskmanager/Prozesse wenn du den Haken bei "Prozesse aller Benutzer" setzt? Sortiere nach Spalte "Arbeitsspeicher", was steht oben in der Liste mit welchen Werten?

    Und davon ab, wieso SQL 2005 und SQL Express parallel am Laufen?

     

    Montag, 27. September 2010 13:47
  • Hallo, ich war ein paar Tage im Urlaub und kann erst jetzt antworten.

    @Tobias - Definition?!: stetig wachsende Auslastung des RAMs bis zur Unbrauchbarkeit des Servers mit anschließendem Neustart

    @Jochen- verfügbarer Physikalischer Speicher nach Neustart 5520 MB, bei Auslastung 300 MB

                  oben in der Liste steht der SQL Server mit 1052 MB, nach Neustart bei 614 MB

                  Sorry, ich hatte falsche Angaben gemacht, es läuft SQL 2005 32 bit und 2008 64 bit (Herstellerabhängig, für Tobit und Estos)

    Ich konnte bisher noch nicht den Prozess ausfindig machen der das System auslastet.

     

    Mfg, Rob

     

     

     

    Montag, 4. Oktober 2010 08:22
  • Moin,

    was Tobias (vermutlich) sagen wollte: Die Belegung des Arbeitsspeichers an sich ist nicht problematisch. Genau das sollen sowohl das Betriebssystem als auch bestimmte Applikationen tun.

    http://blogs.technet.com/b/dmelanchthon/archive/2007/02/08/die-angst-des-pc-nutzers.aspx

    Wenn dein Server also zwischendurch "unbenutzbar" ist, liegt das nicht einfach an der Belegung des Speichers, sondern dann sind noch andere Dinge im Spiel.

    Grundsätzlich ist der Parallelbetrieb mehrerer Datenbankinstanzen (und evtl. weiterer Applikationen?) technisch zwar möglich, aber meist nicht sinnvoll. In deiner Situation wirst du wahrscheinlich um Test und Analyse nicht herumkommen. Hast du z.B. die Möglichkeit, vorübergehend oder dauerhaft einen der SQL Server auf einem anderen Server zu betreiben und zu beobachten, ob eine Veränderung eintritt?

    Gruß, Nils

     


    Nils Kaczenski
    MVP Directory Services
    Hannover, Germany
    Montag, 4. Oktober 2010 08:51
  • Hallo Nils,

    ich kann dauerhaft leider keinen der beiden SQL Datenbanken herunterfahren. Bei hoher Systemauslastung hatte ich bereits die SQL Instanzen der Server herunter gefahren. Jedoch ohne Wirkung.

    >Wenn dein Server also zwischendurch "unbenutzbar" ist, liegt das nicht einfach an der Belegung des Speichers, sondern dann sind noch andere Dinge im Spiel.<

    Leider ist der Server nicht nur "zwischendurch" unbenutzbar. Wie bereits weiter oben beschrieben wird der RAM stetig mehr ausgelastet (und nicht nur kurzzeitig) so das dieser Zwangsweise neu gestartet werden muss. Ich erhalte dann auch sehr viele Anrufe von Usern das Ihre Abfragen zum Server sehr lange dauern. Weitere Hardware habe ich leider auch nicht "drüber" um einen der SQL Server vom W2k8 Server zu entfernen. Meine Frage besteht jedoch weiterhin welcher Task sich im RAM "einnistet" um hier geziehlt weiter zu gehen und auch um evtl Hersteller anzufragen.

    Gruss, Rob 

    Montag, 4. Oktober 2010 09:32
  • Moin,

    was läuft denn noch alles auf dem Server? Ist das OS auf aktuellem Patchlevel? Alle Treiber aktuell? Gibt das Eventlog was her?

    freemem.vbs bringt jedenfalls überhaupt nix - das ist Snake Oil.

    http://www.derfisch.de/tuning--und-tweaking-mythen-teil-ii-ram-tuning.html

    Gruß, Nils

     


    Nils Kaczenski
    MVP Directory Services
    Hannover, Germany
    Montag, 4. Oktober 2010 11:04
  • Hallo,

    auf dem Server läuft nur noch kaspersky. Patchlevel ist auf neuestem Stand.

    im Eventlog habe ich noch den ectisrv Fehler (Anwendung, Hersteller Estos) mit folgender Fehlermeldung:

    EDBMSSQLJournal::query_FromToByUserAndCallID : query_FromToByUserAndCallID can't allocate Statement !.

    hierzu erhalte ich ein Update des Hersteller wenn dies freigegeben wurde. Seiner Aussage nach ist dies jedoch nicht Grund der Auslastung.

    Ansonsten läuft der Server "rund". Kein Hinweis auf weitere Fehler. HDD Kapazität >50%.

     

    Gruss, Rob

    Dienstag, 5. Oktober 2010 06:29
  • Hi Rob,
     
    > auf dem Server läuft nur noch kaspersky. Patchlevel ist auf neuestem
    > Stand.
     
    Der Patchlevel vom Server-Betriebssystem, oder auch von sämtlicher
    (Zusatz-)Software, wie z.B. Kaspersky, Tobit, Estos - aber auch SQL Server
    2005 usw. sowie sämtlicher Hardware inkl. Treiber?
     
     
    > im Eventlog habe ich noch den ectisrv Fehler (Anwendung, Hersteller Estos)
    > mit folgender Fehlermeldung:
    >
    > EDBMSSQLJournal::query_FromToByUserAndCallID : query_FromToByUserAndCallID
    > can't allocate Statement !.
     
    Da würde ich auch eher auf ein Folgefehler tippen
     
     
    > hierzu erhalte ich ein Update des Hersteller wenn dies freigegeben wurde.
    > Seiner Aussage nach ist dies jedoch nicht Grund der Auslastung.
    >
    > Ansonsten läuft der Server "rund". Kein Hinweis auf weitere Fehler. HDD
    > Kapazität >50%.
     
    um der eigentlichen Ursache auf die Spur zu kommen, löse Dich bitte erst
    einmal von Deiner nicht weiter zielführenden Annahme, das (allein) die
    RAM-Auslastung (welche hier ja nicht oder nur knapp über den max. phys.
    RAM-Ausbau geht) die Performance-Einbußen des Servers verursacht.
     
    Grundsätzlich noch einmal die Hintergrundinformation, die Du Dir ins
    Stammbuch schreiben sollst: Eine (zertifizierte) Serveranwendung allokiert
    soviel verfügbaren RAM, soviel es einerseits vom Betriebssystem (hier:
    Virtual Memory Manager) zur Verf��gung gestellt bekommen kann und
    andererseits soviel es für seine max. Performance notwendig ist. Darin ist
    erst einmal kein grundlegendes Problem abzulesen.
     
    Du solltest mittels Langzeitanalyse herausbekommen, ob es ggf. Memory-Leaks
    in den (nicht zertifizierten bzw. fehlerhaften) Serveranwendungen gibt bzw.
    ob nicht andere Ursachen (meine Vermutung) den Serverstillstand begründen.
     
    Ansätze können hier z.B. veraltete Treiber und/oder Firmware sein (z.B.
    Storage-Controller, Disk-Firmware, Netzwerktreiber usw.) aber auch
    wildlaufende Antivirensoftware (die Server-Prozesse "in die Zange nehmen",
    Zugriffe auf Systemressourcen verhindern usw.)
     
    Des Weiteren sind die TCP-IP-Einstellungen gegen den aktuell eingesetzten
    Netzwerkarten-Treiber zu überprüfen:
     
    Stichwort:
    netsh int tcp set global chimney=disabled
    netsh interface tcp set global rss=disabled
    EnableTCPA = 0
     
    S.a. http://technet.microsoft.com/en-us/library/gg162701(WS.10).aspx bzw.
    http://support.microsoft.com/kb/951037/en-us
    - bzw. -
    Information about the TCP Chimney Offload, Receive Side Scaling, and Network
    Direct Memory Access features in Windows Server 2008
    http://support.microsoft.com/kb/951037/en-us
     
     
    Solltest Du aber auf Deinen starren Ansatz verharren, das ausschließlich die
    RAM-Auslastung die Ursache ist, ist Dir hier leider nicht mehr im Rahmen
    dieses Threads weiter zu helfen..
     
    --
    Tobias Redelberger
    StarNET Services (HomeOffice)
    Frankfurter Allee 193
    D-10365 Berlin
    Tel: +49 (30) 86 87 02 678
    Mobil: +49 (163) 84 74 421
    Email: T.Redelberger@starnet-services.net
    Web: http://www.starnet-services.net
     
     
     
    Dienstag, 5. Oktober 2010 12:40
  • Hi,

     

    wenn der physikalisch noch 300 MB frei hat ist es definitiv kein Problem mit dem RAM.

    Beschäftige dich doch mal mit dem Tool perfmon und lass da mal Protokoll schreiben für Prozessor, RAM, Netzwerk und Festplattenaktivitäten. Das dann mal nach einem Crash auswerten um zu schauen wo der die Zeit vertrödelt.

    Mittwoch, 6. Oktober 2010 09:33