Jump to content

MS SQL Server wird langsamer/frisst Speicher


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Ich habe einen MS SQL Server 2000 im Einsatz, BS ist 2003Server.

 

Hardware: 1x Xeon 3,0, 1GB Ram.

 

Es laufen 6 Datenbänke mit einer Größe von 40.000 bis 1.000.000 DS, ca. 80 User.

 

Nach einem Neustart des Servers läuft alles recht flott, aber nach spätestens einem Tag ist alles grottenlahm, der Serverprozeß belegt bis zu 800 MB Speicher.

 

Hilft hier ein Ausbau auf 2GB oder gibts noch andere mögliche Ursachen ?

Link zu diesem Kommentar

Guten Morgen,

 

ich würde bei den Sessions und damit bei der Programmierung ansetzen - das ist nicht normal... schau einmal im Enterprise Manager, wie viele Nachmittags offen sind, ich denke, wenn sich das hochschaukelt, dann bleiben einige offen die das verursachen...

 

Ansonsten schließe ich mich dem Vorredner an - 1 GB ist fast nichts für einen SQL mit sovielen DS / Nutzern... wie groß sind den die DB-Files?

 

Grüße

Tom

Link zu diesem Kommentar

Die Speicherlast von 1GB klingt realistisch.

 

In welchem Shrink-Modus befinden sich die DB's? Versuch sie auf Autoshrink zu stellen, dann wird der SQL-Server zyklisch versuchen, freien Speicher in den DB's zu optimieren.

 

Am schnellsten ist ein SQL-Server, wenn er soviel RAM hat, das er seine DB's im RAM halten kann und noch genug Platz für das System hat.

 

Also versuch mal die Größe deiner DB's zu ermitteln. Evtl. würde es sich auch lohnen, die Last der DB's und der Zugriffe auf zwei SQL-Server zu verteilen, indem du einen zweiten Server dazu baust und ein paar DB's verlagerst.

 

Gruß

Carsten

Link zu diesem Kommentar
Guten Morgen,

 

ich würde bei den Sessions und damit bei der Programmierung ansetzen - das ist nicht normal... schau einmal im Enterprise Manager, wie viele Nachmittags offen sind, ich denke, wenn sich das hochschaukelt, dann bleiben einige offen die das verursachen...

 

Ansonsten schließe ich mich dem Vorredner an - 1 GB ist fast nichts für einen SQL mit sovielen DS / Nutzern... wie groß sind den die DB-Files?

 

Grüße

Tom

erstmal danke für die hilfe. unter aktuelle aktivität/Prozessinfo finde ich 96 Objekte-die meisten sleeping. Hab auf jeden fall nochmal speicher geordert, mal sehen, obs hilft

die beiden größten DBs sind 700 und 1050 MB

Link zu diesem Kommentar

Hohe Rechenlast geschieht vor allem dann wenn die Transactionlogs weggeschrieben werden. desweiteren kann die Rechenlast dadurch reduziert werden das Transactionlogs und Datenbank files auf verschiedenen Festplatten bzw. Besser Raidarrays liegen. Ich hatte da mal einen netten Artikel aus der Zeitung dot.net-Magazin (http://www.dotnetmagazin.de/) gelesen, der einem viele wege zur Performanceoptimierung gegeben hat. mal sehen ob ich den wiederfinde.

Link zu diesem Kommentar

BRUMM! ein teil des Problems ist gelöst. Ich hab die DBs nicht selbst programmiert, habe aber vor 2 tagen mal reingeschaut um zu sehen ob man da was optimieren kann.

 

was seh ich: kein einziger Index gesetzt !! nichts !! null !!

 

Nach dem ich die meisgebrauchten tabellen/spalten indiziert habe, läuft das ding wie ein rennpferd und das jetzt seit mehreren tagen.....

Link zu diesem Kommentar

Schau Dir mal den Indexoptimierungsassistenten und den SQL Analyzer an.

Denn Deine Last von ca. 80 Usern und ca. 1.000.000 Datensaetzen ist normalerweise nichts Dramatisches fuer einen SQL Server 2000.;)

 

Gibt es mehr als ein RAID-Array auf dem Server?

Ja-> Speichere die Transaktionslogs - wenn moeglich - auf einem RAID1 und auf einer unterschiedlichen Partition als die Datenbankdateien.

 

Daneben kannst Du Performance bekommen, indem Du Speichergruppen nutzt und eine oft genutzte Tabelle und deren Indizies in eine Speichergruppe und eine andere oft genutzte Tabelle+deren Indizies in eine andere Speichergruppe stellst.

 

Den Arbeitsspeicher wuerde ich hier auf min. 2 GB aufruesten.

 

Zum Schluss auch das Thema Sicherung des SQL Servers beachten:

Wenn die Datenbanken auf dem Wiederherstellungsmodell Vollstaendig stehen, dann muessen neben den Datenbankdateien auch die Transaktionslogs regelmaessig gesichert werden, da sonst die Transaktionslogs die Platte vollaufen lassen.

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...