eee-csc
Goto Top

SQL Server für Optimale Leistung konfigurieren

Hallo

Ich habe einen brandneuen Server installiert mit Windows 2003 Server SP1.
Dann habe ich noch den MS SQL Server 2000 SP3A draufgespielt.
Soweit so gut.
Nun hat ein Kollege seine Datenbanken drauf gespielt und wollte mit unserer Anwendung darauf zugreifen, und das ist ewig langsam.

Wie gesagt, der Server ist brand neu, wenn man die Hardware während des Zugriffs überwacht hat diese nichts zu tun.

Wie muss ich den SQL Server konfigurieren, damit dieser das Optimale aus der Hardware holt?

Gruß Chris

Content-ID: 28496

Url: https://administrator.de/contentid/28496

Ausgedruckt am: 13.11.2024 um 10:11 Uhr

stpe
stpe 20.03.2006 um 12:51:14 Uhr
Goto Top
Ich denke, Euer Server läuft mit Hyperthreading, aber M$SQL kommt damit wohl nicht wirklich klar. Schaltet HT im Bios des Servers ab, dann sollte der DB-Server wieder in gewohnter Performance daherkommen.

Gruss
Stefan
ITwissen
ITwissen 20.03.2006 um 13:05:44 Uhr
Goto Top
Am Microsoft SQL Server selbst kannst du nicht viel tunen und die Standardeinstellungen sind normalerweise auch ganz Okay. Im wesentliche kannst du dem Prozess mehr Memory zuteilen und mehr CPUs. Das wars auch schon.

Ab hier kommt das Tuning der Daten ins Spiel.

Zuerst auf Hardware (sprich Festplatten):
  • Datenbankdateien auf schnelle Platten verteilen.
  • Eventuell geeignete Raid-Konfiguration
  • Temp und Index Dateien auf geeignete Platten verschieben

Als zweites kommt das Tuning des Datenzugriffs:
  • Joins mit neuen Indexen beschleunigen
  • eventuell sind die Schemas schlecht gewaehlt zu deinen Datenabfragen
  • Joins fehlerhaft oder unsinnig

Drittens die Applikation:
  • Wieviel Daten gehen durch die Leitung?

Du siehst also, das Tuning von Microsoft SQL Server Applikation zu machen ist nicht ganz so einfach, wie man sich das vorstellt. Die Angaben die du bisher ueber die Konfiguration deines Scenarios gemacht hast helfen leider auch nicht weiter.

Einfache Tests kannst du schon mal mit dem Windows eigenen perfmon sowohl auf dem Server als auch auf dem Client durchfuehren. Vielleicht findest du damit schon den Engpass.

Auf der Datenbank koenntest du mit dem SQL-Profiler rausfinden, ob deine SQL Anfragen ungewoehnlich viel Speicher brauchen und ob die Indexe benutzt werden.

Ich hoffe ich konnte dir zumindest die Richtung in der du weitergehen kannst aufzeigen.
ITwissen
ITwissen 20.03.2006 um 13:09:43 Uhr
Goto Top
Wir haben hier einen Dual-Xeon mit Hyperthreading. Als OS Windows 2000 und darauf eine MS SQL Server 2000 laufen.

Kein Performanz Problem bisher.

Aber ein Versuch ohne Hypertreading schadet ja nichts.
stpe
stpe 20.03.2006 um 13:14:54 Uhr
Goto Top
ich denke nicht, dass es in diesem Fall angebracht ist, soweit zu gehen. Wenn bei aktueller Serverhardware die Performance absolut im Keller ist, hat das andere Ursachen (wie z.b. aktiviertes Hyperthreading).

Ein von Dir beschriebenes Tuning ist sinnvoll, wenn der Server sowieso schon irgendwo am Anschlag laeuft und Maßnamen ergriffen werden müssen, auch noch das letzte Quentchen Leistung aus dem Server zu holen.