Jak rozwiązywać problemy z wydajnością programu SQL Server

Dotyczy: Microsoft SQL Server 2005 Standard EditionMicrosoft SQL Server 2005 Developer EditionMicrosoft SQL Server 2005 Enterprise Edition

Ogłoszenie


Najnowsze zalecenia i zaktualizowana dokumentacja łącza w tym temacie można znaleźć następujący dokument:

Rozwiązywanie problemów i zwiększania wydajności serwera SQL

Streszczenie


Rozwiązywanie problemów z wydajnością, należy wykonać pewne czynności izolowanie i ustalić przyczynę problemu. Możliwe przyczyny:
  • Blokowanie
  • Rywalizacja o zasoby systemowe
  • Problemy dotyczące projektowania aplikacji
  • Kwerend lub procedur przechowywanych, które mają długich czasach wykonania
Identyfikowanie tych przyczyn jest zazwyczaj bardzo czasochłonne, a może spędzić kilka dni oceny zebranych informacji. Złożoność analizy wydajności nie jest specyficzne dla konkretnej bazy danych produktu lub systemu operacyjnego. Wszystkie aplikacje są przedmiotem ograniczeń wydajności z powodu zasób, projekt lub użycia czynników.

Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

224587 jak rozwiązywać problemy z wydajnością programu SQL Server

Aby pomóc zidentyfikować i rozwiązać problem, należy zebrać następujące informacje, w tym samym czasie i łatwo dostępne dane wyjściowe mają, zanim skontaktujesz się z pomocą techniczną Microsoft (PSS):
  • Dane wyjściowe skryptu Blocker
  • Dziennik śledzenia programu SQL Profiler
  • Dziennik monitora wydajności programu SQL Server
Uwaga Jeśli nie zbieraj te informacje po wystąpieniu problemów z wydajnością, należy zebrać wszystkie informacje ponownie. To może opóźnić proces rozwiązywania problemów.

Po wystąpieniu problemu, należy zebrać następujące informacje i był dostępny:
  • Raport sqldiag
  • Dzienniki zdarzeń aplikacji i systemu Microsoft Windows NT
W większości scenariuszy PSS wymaga tych informacji do zrozumienia środowiska naturalnego oraz rodzaj problemu z wydajnością. Jeśli jakakolwiek część tych informacji nie jest dostępna, proces rozwiązywania problemów mogą być przedłużone i identyfikowanie problemu z wydajnością mogą być opóźnione.

Nawet jeśli aktualnie nie występują problemy z wydajnością, firma Microsoft zaleca stosowanie tego procesu. Jeśli występuje problem z wydajnością, można przechwycić wymaganych informacji w możliwie jak najszybciej. Ponadto jeśli Przechwytywanie dziennika programu SQL Profiler według planu bazowego, dziennik monitora wydajności programu SQL Server i skrypt blocker gdy aplikacja działa zgodnie z oczekiwaniami, można użyć tych informacji do porównania gdy aplikacja działa zgodnie z oczekiwaniami.

Jeśli zebrać te informacje w dużym natężeniu ruchu środowiska SQL Server może spowodować zmniejszenie wydajności. Należy jednak mieć tych informacji do zidentyfikowania przyczyny problemu i na potrzeby rozwiązywania problemów. Śledzenie programu SQL Profiler ma największy wpływ na wydajność. Jeśli poważnie obniża się wydajność, śledzenia programu SQL Profiler można dostosować poprzez zmniejszenie typy zdarzeń, które przechwytuje. Ograniczanie śledzenia programu SQL Profiler powinna zapewnić pewną poprawę. Jeśli masz pytania lub problemy, konfigurowania i zbierania informacji, z pomocą techniczną Microsoft.


Powrót do początku

Dane wyjściowe skryptu Blocker

Skrypt blocker ma kluczowe znaczenie dla identyfikacji blokowania scenariuszach. Jednak dane wyjściowe skryptu można użyć do rozwiązywania problemów z wydajnością nawet wtedy, gdy blokowanie nie jest to problem. Wyjście pomaga ustalić, jeśli kwerendy oczekujących na zasobów, takich jak We/Wy pliku, lub jeśli nie są transakcje przekazana lub wycofana zgodnie z oczekiwaniami.
Aby uzyskać więcej informacji dotyczących implementowania skrypt blocker kliknij następujące numery artykułów w celu wyświetlenia tych artykułów z bazy wiedzy Microsoft Knowledge Base:

251004 jak monitorowanie blokowania programu SQL Server 7.0

271509 jak monitorowanie blokowania programu SQL Server 2000


Powrót do początku

Dziennik śledzenia programu SQL Profiler

Śledzenie programu SQL Profiler przechwytuje aktywności na komputerze uruchomiony program SQL Server. Tych informacji można użyć do identyfikowania powolne uruchamianie kwerend i -optymalnej realizacji planów. Ponadto program SQL Profiler dokumentuje serię zdarzeń mających miejsce przed problemy z wydajnością i pomaga zidentyfikować jego przyczynę.

Aby utworzyć i zaimplementować śledzenie programu SQL Profiler przy użyciu graficznego interfejsu użytkownika, zobacz sekcję "Co do monitora" następującego artykułu z bazy wiedzy Microsoft Knowledge Base:
224587 jak rozwiązywać problemy z wydajnością programu SQL Server

Aby uzyskać więcej informacji dotyczących sposobu tworzenia i wykonywania śledzenie programu SQL Profiler za pomocą poleceń języka Transact-SQL kliknij następujące numery artykułów w celu wyświetlenia tych artykułów z bazy wiedzy Microsoft Knowledge Base:

289742 sposób tworzenia śledzenia programu SQL Server 7.0

283790 sposób tworzenia śledzenia programu SQL Server 2000

Aby uzyskać więcej informacji o sposobie monitorowania śledzenie programu SQL Profiler za pomocą poleceń języka Transact-SQL kliknij następujące numery artykułów w celu wyświetlenia tych artykułów z bazy wiedzy Microsoft Knowledge Base:

289279 INF: jak ślady Monitor programu SQL Server 7.0

283786 jak monitorować śledzenia programu SQL Server 2000

Uwaga Jeśli masz śledzenie programu SQL Profiler, duże obciążenie pracą, można użyć Kreatora strojenia indeksu. Kreator strojenia indeksu używa Optymalizator kwerend programu SQL Server, aby określić optymalny zestaw indeksy dla określonej kwerendy. Kreator strojenia indeksu jest niezwykle efektywne narzędzie, aby stwierdzić, czy odpowiednie indeksy w bazie danych. Implementując indeksy, które Kreator sugeruje, można zwiększyć wydajność aplikacji.


Aby uzyskać więcej informacji na temat używania Kreatora strojenia indeks zobacz temat "Kreator strojenia indeksu" w dokumentacji SQL Server Books Online.

Powrót do początku

Dziennik monitora wydajności programu SQL Server

Program SQL Server jest zazwyczaj dotyczy następujących ograniczeń:
  • CPU
  • Pamięci
  • We/Wy pliku
  • Blokowanie, blokowanie lub zakleszczenia
Monitor wydajności programu SQL Server można użyć do identyfikowania, jak te wąskich gardeł może mieć wpływ na program SQL Server. Ponadto można użyć tego dziennika do identyfikowania, gdy proces zewnętrzny intensywnie korzysta z uruchomionym programem SQL Server, negatywny wpływ na wydajność programu SQL Server.

Przed rozpoczęciem monitora wydajności programu SQL Server, upewnij się, że liczniki dysków są włączone. Aby to zrobić, uruchom polecenie diskperf z wiersza polecenia. Jeśli liczniki dysku nie jest, uruchom polecenie diskperf -y i uruchom ponownie komputer.

Podczas tworzenia dziennika monitora wydajności programu SQL Server, należy zebrać następujące informacje:
  • Plik stronicowania
  • Proces
  • Procesor
  • Wszystkie liczniki programu SQL Server
  • Pamięci
  • Wątki
  • Dysk logiczny
  • Dysk fizyczny
  • System
Uwaga Domyślny interwał o wartości 15 sekund powinien wystarczająco dużo czasu do monitorowania serwera; Niektóre problemy czas może mieć zmniejszyć interwał czasu dla zbierania danych.

Aby uzyskać więcej informacji na temat sposobu konfigurowania dziennika monitora wydajności programu SQL Server kliknij następujące numery artykułów w celu wyświetlenia tych artykułów z bazy wiedzy Microsoft Knowledge Base:

Jak utworzyć dziennik monitora wydajności do rozwiązywania problemów NT 150934

248345 jak utworzyć dziennik monitora systemu w systemie Windows 2000



Uwaga Aby uzyskać więcej informacji dotyczących monitorowania wydajności w programie SQL Server 2005 zobacz temat "Monitorowanie i dostrajanie dla wydajności" w dokumentacji SQL Server 2005 Books Online.
Powrót do początku

sqldiagnarzędzie

Sqldiagnarzędzie jest dostarczane z programem SQL Server. Zbiera cenne informacje dotyczące konfiguracji komputera z systemem SQL Server, systemu operacyjnego i informacje, które jest zgłaszane w dziennikach błędów programu SQL Server. Aby uzyskać informacje dotyczące sposobu korzystania z narzędzia sqldiag zobacz temat "sqldiag narzędzie" w dokumentacji SQL Server Books Online.

Aby uzyskać więcej informacji o sposobach uruchamiania sqldiag na klastrowanym serwerze SQL Server kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:

233332 jak uruchomić SQLDIAG na klastrowane/wirtualnym programu SQL Server


Uwaga W programie SQL Server 2005 sqldiagnarzędzie uległ istotnej zmianie. Argumenty wiersza polecenia dla tego narzędzia nie są zgodne z programem SQL Server 2000. To narzędzie może być zmieniony, a aplikacje lub skrypty, które opierają się na jego argumenty wiersza polecenia lub zachowanie może nie działać poprawnie w przyszłych wydaniach. Aby uzyskać więcej informacji zobacz temat "SQLdiag Utility" w dokumentacji SQL Server 2005 Books Online.
Powrót do początku

Dzienniki zdarzeń aplikacji i systemu Microsoft Windows NT

Dzienniki zdarzeń aplikacji i systemu Windows NT można użyć do identyfikowania problemów, które nie widzi w innych danych. Dzienniki te pomóc zapewnić kompletny obraz aktywności serwera i zapewniają pełniejsze zrozumienie środowiska.

Powrót do początku

Gdzie zapisać te pliki

Następujący serwer FTP wymiany plików firmy Microsoft pozwala na wysyłanie i odbieranie plików do i z inżynierów pomocy technicznej:


Aby uzyskać więcej informacji, zapoznaj się z instrukcjami, które znajdują się w witrynie Microsoft plik wymiany FTP w sieci Web.

Powrót do początku


Zakładki: 9

Więcej informacji


 
Reguła oprogramowaniaNazwa regułyOpis regułyWersje produktu, przeciwko którym reguła jest oceniane
Doradca programu System CenterSQL Server ma wiele aktywnych ślady, które mogą wpłynąć na wydajnośćDoradca System Center sprawdza obecność aktywne inne niż domyślne śledzenia, który aktualnie jest przechwytywanie informacji. Ten alert jest generowany, jeśli istnieją dodatkowe zapisy uruchomiony, jeśli są one zapisane w formacie UNC i jeśli są przechwytywania drogie eotwory wentylacyjne. Informacje zawarte w tym artykule i podjąć odpowiednie działania naprawcze.Program SQL Server 2008
Program SQL Server 2008 R2
Program SQL Server 2012

Powrót do początku