Testen einer App, die derzeit unter Einzelbenutzerlast steht - da die Testdaten auf Produktionsgrößen angestiegen sind (400.000 bis 2 Millionen Zeilen pro Tabelle), sind einige SELECT-SPs nicht mehr schnell genug (mit begrenzten Testdaten, die früher jeweils <30 ms waren). Jetzt sind es 100-200 ms, aber es gibt mehrere, so dass die Verzögerung in der Benutzeroberfläche sichtbar wird.
sql-server
performance
sql-server-2000
Pastymage
quelle
quelle
Antworten:
Sie können verwenden
DBCC SQLPERF("waitstats")
. Dadurch werden die Wartezeiten der Aufgaben zurückgegeben, auf die Ihr SQL Server gewartet hat. Detaillierte Erklärungen zu den einzelnen Zählern finden Sie online. Mithilfe dieser Informationen können Sie Ihre Engpässe ermitteln.Aktivieren Sie außerdem die Client-Statistiken im Query Analyzer, um die Wartezeiten auf der Client-Seite anzuzeigen.
Ich gehe davon aus, dass sich Ihre Hardware seit Ihrem ersten Test nicht geändert hat. Da sie also konstant sind, würde ich nicht daran zweifeln.
quelle
Gedanken:
Einige Lösungen:
Führen Sie die fehlende Index-DMV aus, um fehlende Indizes anzuzeigen:
... und teuerste DMV-Anfragen
Andernfalls enthält diese SO-Frage gute Tipps von mir und anderen SQL-Typen mit hohen Wiederholungszahlen: https://stackoverflow.com/q/4118156/27535 (Ich werde nicht alle 3 längeren Antworten kopieren / einfügen.)
quelle
Protokollieren Sie Systemressourcen oder sehen Sie im Task-Manager nach, wie viele Systemressourcen von den Prozessen verwendet werden.
quelle
Interessant ist, dass die Version von MSSQL 2000 ausgeführt wird
Es gibt vier Versionen der Binärdateien
Jede dieser Versionen hat Einschränkungen in Bezug auf RAM und CPU.
Es lohnt sich, die Möglichkeit zu untersuchen, dass die derzeit gespeicherte Datenmenge aufgrund von Abfragen, die mehr RAM zur Erfüllung von Abfragen / Unterabfragen benötigen, oder einer unzureichenden CPU-Auslastung einfach über die Funktionen der Version von MSSQL 2000 hinausgewachsen ist. Möglicherweise müssen Sie die Binärversion auf die MSSQL 2000 Entrprise-Version aktualisieren (wahrscheinlich ein langer Weg, da Ihre MSSQL-Version alt ist) oder die beste Version, die sich Ihr Budget leisten kann.
Möglicherweise möchten Sie sogar MSSQL 2000 verlassen, da 2008 das neueste ist und aktuelle Unterstützung verfügbar ist. Auch dies könnte ein Budgetproblem sein. Wenn Sie Enterprise bereits verwenden oder Ihr Budget keine größeren Upgrades zulässt, können Sie jetzt DB Statistics oder DB Design erkunden.
Haftungsausschluss: Ich bin kein SQL Server-DBA
quelle