2008-10-22 11 views

Odpowiedz

5

Krok 1: Zainstaluj urządzenie SQL Server Performance Dashboard.

Krok 2: Zysk.

Poważnie, chcesz zacząć od spojrzenia na ten pulpit. Więcej na temat instalacji i korzystania z niego można znaleźć here i/lub

1

miałem dobre sukces na coraz bardziej z narzędziami Tuning Database świadczonych wewnątrz SSMS lub SQL Profiler podczas pracy na SQL Server 2000.

Najważniejsze jest, aby pracować z dobrym zestawem próbek, śledzić część prawdziwego obciążenia dla produkcji analsys, który dostanie najlepszy ogólny huk dla złotówki.

+0

Dziękuję za odpowiedź, to SQL Server 2005 - ale wierzę, że kreator dostrajania baz danych wciąż istnieje (zaktualizowałem to pytanie). – digiguru

+0

Tak, w takim przypadku skorzystaj z narzędzia Database Tuning Engine Advisor, dostępnego pod Narzędzia od SSMS! –

0

Używam kilku różnych technik.

Jeśli próbujesz zoptymalizować konkretne zapytanie, użyj Query Analyzer. Skorzystaj z dostępnych narzędzi, takich jak wyświetlanie planu wykonania itp.

W przypadku sytuacji, w której nie masz pewności, KTÓRE zapytanie działa wolno, jednym z najpotężniejszych narzędzi, z których możesz skorzystać, jest program SQL Profiler.

Wystarczy wybrać bazę danych, którą chcesz profilować i pozwolić jej działać.

Należy pozwolić mu działać przez odpowiedni czas (zależy to od ruchu w aplikacji), a następnie można zrzucić wyniki w tabeli i rozpocząć ich analizę.

Idziesz do zajrzeć do zapytań, które mają dużo czyta, albo zajmują dużo czasu procesora, itd

Optimization jest niedźwiedź, ale nie poddawać się w nim, a co najważniejsze, nie zakładaj, że wiesz, gdzie jest wąskie gardło, znajdź dowód, gdzie to jest i napraw to.

1

Używam SQL Profiler, który jest dostarczany z SQL Server. Większość źle działających zapytań, które znalazłem, nie zużywa dużo procesora, ale generuje masę IO dysku.

Mam tendencję do umieszczania filtrów na odczytach dysków i szukam zapytań, które mają tendencję do wykonywania ponad 20 000 odczytów. Następnie sprawdzam plan wykonania dla zapytań, które zazwyczaj dostarczają informacji potrzebnych do optymalizacji zapytania lub indeksów w powiązanych tabelach.

3

celu identyfikacji problematycznych zapytań uruchomić Profiler wybrać następujące zdarzenia:

  • TSQL: BatchCompleted
  • TSQL: StmtCompleted
  • SP: Zakończony
  • SP: StmtCompleted

filtr wyjście na przykład przez

  • Czas trwania> x ms (na przykład 100 ms, zależy przede wszystkim od potrzeb i rodzaju systemu)
  • centralne> y ms
  • Odsłon> R
  • Zapisuje> W

W zależności od tego, co chcesz zoptymalizować. Pamiętaj, aby filtrować dane wyjściowe na tyle, aby nie wyświetlać tysięcy datarów przewijających się przez okno, ponieważ wpłynie to na wydajność twojego serwera!

Pomocne w logowaniu wyników do tabeli bazy danych w celu późniejszej analizy. Pomocne może być również równoległe uruchamianie monitora systemu Windows w celu wyświetlenia obciążenia procesora, dysku i niektórych wskaźników wydajności serwera sql. Skonfiguruj sysmon, aby zapisać dane do pliku.

Niż trzeba produkować typowe obciążenie zapytań i dane wolumne w bazie danych, aby zobaczyć znaczące wartości z profilerem.

Po uzyskaniu danych wyjściowych z profilera można zatrzymać profilowanie.

Następnie ponownie załaduj przechowywane dane z tabeli profilowania do profilera i użyj importmenu, aby zaimportować dane wyjściowe z monitora systemowego, a profiler skoreluje dane wyjściowe sysmon z danymi profilera sql. To bardzo fajna funkcja.

W tym widoku można od razu zidentyfikować błędy związane z pamięcią, dyskiem lub systemem cpu.

Po zidentyfikowaniu niektórych zapytań, które chcesz omtymalizować, przejdź do analizatora zapytań i obejrzyj plan wykonania oraz spróbuj omówić użycie indeksu i projektowanie zapytań.