Udostępnij za pośrednictwem


SQL Server Profiler

Dotyczy:programu SQL ServerAzure SQL Managed Instance

SQL Server Profiler to interfejs umożliwiający tworzenie śladów i analizowanie i odtwarzanie wyników śledzenia oraz zarządzanie nimi. Zdarzenia są zapisywane w pliku śledzenia, który można później przeanalizować lub użyć do odtworzenia określonej serii kroków podczas diagnozowania problemu.

Podczas próby nawiązania połączenia z usługą Azure SQL Database z profilera programu SQL Server program niepoprawnie zgłasza wprowadzający w błąd komunikat o błędzie w następujący sposób:

To run a trace against SQL Server, you must be a sysadmin fixed server role member or have the ALTER TRACE permission.

Komunikat powinien zawierać informację, że usługa Azure SQL Database nie jest obsługiwana przez program SQL Server Profiler.

Powiadomienie o wycofaniu

Ważne

Śledzenie SQL i program SQL Server Profiler są przestarzałe. Zamiast tego użyj Extended Events. Ta funkcja zostanie usunięta w przyszłej wersji programu SQL Server. Unikaj używania tej funkcji w nowych pracach programistycznych i zaplanuj modyfikowanie aplikacji, które obecnie korzystają z tej funkcji.

Microsoft.SqlServer.Management.Trace Przestrzeń nazw zawierająca obiekty śledzenia i odtwarzania programu SQL Server jest również przestarzała. Obsługiwane są jednak obciążenia usług Analysis Services.

Aby uzyskać więcej informacji na temat zdarzeń rozszerzonych, zobacz następujące artykuły:

Gdzie jest profiler?

Profiler można uruchomić w obszarze Uruchom program SQL Server Profiler.

Przechwytywanie i odtwarzanie danych śledzenia

W poniższej tabeli przedstawiono funkcje, których można używać w programie SQL Server do przechwytywania i odtwarzania danych śledzenia.

Funkcja / docelowe obciążenie Aparat relacyjny Analysis Services
Przechwytywanie śladu Omówienie graficznego interfejsu użytkownika zdarzeń rozszerzonych w programie SQL Server Management Studio SQL Server Profiler
Powtarzanie śledzenia Omówienie rozproszonego odtwarzania programu SQL Server SQL Server Profiler

Korzystanie z programu SQL Server Profiler

Microsoft SQL Server Profiler to graficzny interfejs użytkownika do śledzenia SQL na potrzeby monitorowania wystąpienia aparatu bazy danych lub usług Analysis Services. Możesz przechwytywać i zapisywać dane dotyczące każdego zdarzenia w pliku lub tabeli w celu późniejszego przeanalizowania. Można na przykład monitorować środowisko produkcyjne, aby sprawdzić, które procedury składowane wpływają na wydajność ze względu na zbyt wolne wykonywanie. Użyj programu SQL Server Profiler do wykonywania działań, takich jak:

  • Przechodzenie przez zapytania dotyczące problemów w celu znalezienia przyczyny problemu.

  • Znajdowanie i diagnozowanie wolno działających zapytań.

  • Przechwytywanie serii instrukcji Transact-SQL, które prowadzą do problemu. Zapisany ślad może następnie replikować problem na serwerze testowym, na którym można zdiagnozować problem.

  • Monitorowanie wydajności programu SQL Server w celu dostosowania obciążeń. Aby uzyskać informacje na temat dostrajania projektu fizycznej bazy danych dla obciążeń baz danych, zobacz Doradca dostrajania aparatu bazy danych.

  • Korelowanie liczników wydajności w celu zdiagnozowania problemów.

Program SQL Server Profiler obsługuje również audytowanie działań wykonywanych na instancjach programu SQL Server. Audyty rejestrują działania związane z bezpieczeństwem do późniejszego przeglądu przez administratora bezpieczeństwa.

Pojęcia dotyczące profilera programu SQL Server

Aby użyć programu SQL Server Profiler, musisz zrozumieć terminy opisujące sposób działania narzędzia.

Zrozumienie funkcji śledzenia SQL pomaga podczas pracy z programem SQL Server Profiler. Aby uzyskać więcej informacji, zobacz Ślad SQL.

Zdarzenie

Zdarzenie to akcja wygenerowana w instancji silnika bazy danych programu SQL Server. Przykładami tych zdarzeń są:

  • Połączenia logowania, błędy i rozłączenia.
  • Transact-SQL, SELECT, INSERT, UPDATE i DELETE wyrażenia.
  • Stan partii zdalnego wywołania procedury (RPC).
  • Początek lub koniec procedury składowanej.
  • Początek lub koniec instrukcji w ramach procedur składowanych.
  • Początek lub koniec partii SQL.
  • Błąd zapisany w dzienniku błędów programu SQL Server.
  • Blokada uzyskana lub zwolniona w obiekcie bazy danych.
  • Otwarty kursor.
  • Sprawdzanie uprawnień zabezpieczeń.

Ślad wyświetla wszystkie dane wygenerowane przez zdarzenie w jednym wierszu. Kolumny danych opisujące zdarzenie szczegółowo przecinają ten wiersz.

Klasa zdarzenia

Klasa zdarzeń jest typem zdarzenia, które można śledzić. Klasa zdarzeń zawiera wszystkie dane, które może zgłaszać zdarzenie. Na poniższej liście przedstawiono przykłady klas zdarzeń:

  • SQL:BatchCompleted
  • Inspekcja logowania
  • Wylogowanie z audytu
  • Blokada: uzyskano
  • Blokada: odblokowana

KategoriaWydarzenia

Kategoria zdarzeń definiuje sposób grupowania zdarzeń programu SQL Server Profiler. Na przykład kategoria zablokowań grupuje wszystkie klasy zdarzeń zablokowań. Jednak kategorie zdarzeń istnieją tylko w programie SQL Server Profiler. Ten termin nie odzwierciedla sposobu grupowania zdarzeń w silniku.

Kolumna danych

Kolumna danych jest atrybutem klasy zdarzeń przechwyconej w śladzie. Ponieważ klasa zdarzeń określa typ danych, które można zebrać, nie wszystkie kolumny danych mają zastosowanie do wszystkich klas zdarzeń. Na przykład w śladzie, który przechwytuje klasę zdarzeń Lock: Acquired, kolumna danych BinaryData zawiera wartość zablokowanego identyfikatora strony lub wiersza, ale kolumna danych Dane liczb całkowitych nie zawiera żadnej wartości, ponieważ nie ma zastosowania do przechwyconej klasy zdarzeń.

Szablon

Szablon definiuje domyślną konfigurację śledzenia. W szczególności obejmuje klasy zdarzeń, które mają być monitorowane za pomocą programu SQL Server Profiler. Można na przykład utworzyć szablon określający zdarzenia, kolumny danych i filtry. Nie można wykonać szablonu bezpośrednio. Zamiast tego zapiszesz go jako plik z .tdf rozszerzeniem. Po zapisaniu szablon steruje danymi śledzenia przechwytywanymi po uruchomieniu śledzenia na podstawie szablonu.

Ślad

Ślad przechwytuje dane na podstawie wybranych klas zdarzeń, kolumn danych i filtrów. Możesz na przykład utworzyć ślad, aby monitorować błędy wyjątków. W tym celu należy wybrać klasę zdarzenia Wyjątek oraz kolumny danych Błąd, Stan i Istotność. Wyniki śledzenia zapewniają istotne dane tylko wtedy, gdy dane są zbierane z tych trzech kolumn. Możesz uruchomić śledzenie skonfigurowane w taki sposób i zbierać dane na dowolnych zdarzeniach wyjątków na serwerze. Zapisz dane śledzenia lub użyj ich natychmiast do analizy. Później można odtworzyć ślady, chociaż niektóre zdarzenia, takie jak zdarzenia wyjątku , nigdy nie są odtwarzane. Możesz również zapisać ślad jako szablon, aby skompilować podobne ślady.

Program SQL Server udostępnia dwa sposoby śledzenia wystąpienia programu SQL Server: można śledzić za pomocą programu SQL Server Profiler lub śledzić przy użyciu systemowych procedur składowanych.

Filtr

Podczas tworzenia śledzenia lub szablonu można zdefiniować kryteria filtrowania danych zbieranych przez zdarzenie. Aby uniknąć nadmiernego rozrostu śladów, przefiltruj je tak, aby zebrać tylko część danych zdarzeń. Na przykład, ograniczenie nazw użytkowników systemu Microsoft Windows w śladzie do określonych osób zmniejsza ilość danych wyjściowych.

Jeśli nie ustawisz filtru, dane wyjściowe śledzenia zwracają wszystkie zdarzenia wybranych klas zdarzeń.

Zadania profilera programu SQL Server

Opis zadania Artykuł
Wyświetla listę wstępnie zdefiniowanych szablonów zapewnianych przez program SQL Server na potrzeby monitorowania określonych zdarzeń oraz uprawnień wymaganych do używania śladów odtwarzania. Szablony i uprawnienia profilera programu SQL Server
Opisuje sposób uruchamiania programu SQL Server Profiler. Uprawnienia wymagane do uruchomienia programu SQL Server Profiler
Opisuje sposób tworzenia śladu. Tworzenie śladu (SQL Server Profiler)
Opisuje sposób określania zdarzeń i kolumn danych dla pliku śledzenia. Określanie zdarzeń i kolumn danych dla pliku śledzenia (SQL Server Profiler)
Opisuje sposób zapisywania wyników śledzenia w pliku. Zapisywanie wyników śledzenia w pliku (SQL Server Profiler)
Opisuje sposób zapisywania wyników śledzenia w tabeli. Zapisywanie wyników śledzenia w tabeli (SQL Server Profiler)
Opisuje sposób filtrowania zdarzeń w śledzeniu. Filtruj zdarzenia w śledzeniu (SQL Server Profiler)
Opisuje sposób wyświetlania informacji filtru. Wyświetlanie informacji o filtrze (SQL Server Profiler)
Opisuje sposób modyfikowania filtru. Zmodyfikuj filtr (SQL Server Profiler)
Opisuje sposób ustawiania maksymalnego rozmiaru pliku śledzenia (SQL Server Profiler). Ustaw maksymalny rozmiar pliku dla pliku śledzenia (SQL Server Profiler).
Opisuje sposób ustawiania maksymalnego rozmiaru tabeli śledzenia. Ustawianie maksymalnego rozmiaru tabeli śledzenia (SQL Server Profiler)
Opisuje sposób uruchamiania śledzenia. Rozpocznij śledzenie (SQL Server Profiler)
Opisuje sposób automatycznego uruchamiania śledzenia po nawiązaniu połączenia z serwerem. Automatyczne uruchamianie śledzenia po nawiązaniu połączenia z serwerem (SQL Server Profiler)
Opisuje sposób filtrowania zdarzeń na podstawie godziny rozpoczęcia zdarzenia. Filtrowanie zdarzeń na podstawie czasu rozpoczęcia zdarzenia (SQL Server Profiler)
Opisuje sposób filtrowania zdarzeń na podstawie czasu zakończenia zdarzenia. Filtrowanie zdarzeń na podstawie czasu zakończenia zdarzenia (SQL Server Profiler)
Opisuje sposób filtrowania identyfikatorów sesji w ślad. Filtrowanie identyfikatorów sesji w śladzie (SQL Server Profiler)
Opisuje sposób wstrzymania śledzenia. Wstrzymywanie śledzenia (SQL Server Profiler)
Opisuje, jak zatrzymać śledzenie. Zatrzymaj śledzenie (SQL Server Profiler)
Opisuje, jak uruchomić śledzenie po jego wstrzymaniu lub zatrzymaniu. Po wstrzymaniu lub zatrzymaniu uruchom ślad (Profiler SQL Server)
Opisuje sposób czyszczenia okna śledzenia. Czyszczenie okna śledzenia (SQL Server Profiler)
Opisuje sposób zamykania okna śledzenia. Zamknij okno śledzenia (SQL Server Profiler)
Opisuje sposób ustawiania wartości domyślnych definicji śledzenia. Ustawianie wartości domyślnych definicji śledzenia (SQL Server Profiler)
Opisuje, jak ustawić domyślne ustawienia wyświetlania śledzenia. Ustawianie domyślnych wartości wyświetlania śledzenia (SQL Server Profiler)
Opisuje sposób otwierania pliku śledzenia. Otwieranie pliku śledzenia (SQL Server Profiler)
Opisuje sposób otwierania tabeli śledzenia. Otwieranie tabeli śledzenia (SQL Server Profiler)
Opisuje sposób odtwarzania tabeli śledzenia. Powtórz tabelę śledzenia (SQL Server Profiler)
Opisuje sposób odtwarzania pliku śledzenia. Ponowne odtwarzanie pliku śledzenia (SQL Server Profiler)
Opisuje sposób ponownego odtwarzania pojedynczego zdarzenia naraz. Ponowne odtwarzanie pojedynczego zdarzenia w czasie (SQL Server Profiler)
Opisuje sposób odtwarzania do punktu przerwania. Powtarzanie do punktu przerwania (SQL Server Profiler)
Opisuje sposób odtwarzania kursora. Odtwarzanie do kursora (SQL Server Profiler)
Opisuje sposób odtwarzania skryptu Transact-SQL. Ponowne odtwarzanie skryptu Transact-SQL (SQL Server Profiler)
Opisuje sposób tworzenia szablonu śledzenia. Tworzenie szablonu śledzenia (SQL Server Profiler)
Opisuje sposób modyfikowania szablonu śledzenia. Modyfikowanie szablonów śledzenia
Opisuje sposób ustawiania globalnych opcji śledzenia. Ustawianie globalnych opcji śledzenia (SQL Server Profiler)
Opisuje sposób znajdowania wartości lub kolumny danych podczas śledzenia. Znajdowanie wartości lub kolumny danych podczas śledzenia (SQL Server Profiler)
Opisuje sposób tworzenia szablonu na podstawie uruchomionego śledzenia. Tworzenie szablonu na podstawie uruchomionego śladu (SQL Server Profiler)
Opisuje sposób tworzenia szablonu z pliku śledzenia lub tabeli śledzenia. Tworzenie szablonu na podstawie pliku śledzenia lub tabeli śledzenia (SQL Server Profiler)
Opisuje sposób tworzenia skryptu Transact-SQL do uruchamiania śledzenia. Tworzenie skryptu Transact-SQL do uruchamiania śledzenia (SQL Server Profiler)
Opisuje sposób eksportowania szablonu śledzenia. Eksportowanie szablonu śledzenia (SQL Server Profiler)
Opisuje sposób importowania szablonu śledzenia. Importuj szablon śledzenia (SQL Server Profiler)
Opisuje sposób wyodrębniania skryptu ze śladu. Wyodrębnij skrypt ze śledzenia (SQL Server Profiler)
Opisuje sposób korelowania śledzenia z danymi dziennika wydajności systemu Windows. Korelowanie śledzenia z danymi dziennika wydajności systemu Windows
Opisuje sposób organizowania kolumn wyświetlanych w śladzie. Zorganizuj kolumny wyświetlane w śladzie (SQL Server Profiler)
Opisuje sposób uruchamiania programu SQL Server Profiler. Uruchamianie programu SQL Server Profiler
Opisuje sposób zapisywania śladów i szablonów śledzenia. Zapisywanie śladów i szablonów śledzenia
Opisuje sposób modyfikowania szablonów śledzenia. Modyfikowanie szablonów śledzenia
Opisuje sposób korelowania śledzenia z danymi dziennika wydajności systemu Windows. Korelowanie śledzenia z danymi dziennika wydajności systemu Windows
Opisuje sposób wyświetlania i analizowania śladów za pomocą programu SQL Server Profiler. Wyświetlanie i analizowanie śladów za pomocą programu SQL Server Profiler
Opisuje sposób analizowania zakleszczeń za pomocą programu SQL Server Profiler. Analizowanie blokad za pomocą programu SQL Server Profiler
Opisuje sposób analizowania zapytań za pomocą wyników SHOWPLAN w programie SQL Server Profiler. Analizowanie zapytań za pomocą wyników SHOWPLAN w narzędziu SQL Server Profiler
Opisuje sposób filtrowania śladów za pomocą programu SQL Server Profiler. śledzenie filtru za pomocą programu SQL Server Profiler
Opisuje sposób używania funkcji odtwarzania programu SQL Server Profiler. Ślady odtwarzania
Zawiera listę artykułów pomocy kontekstowej dla programu SQL Server Profiler. Pomoc F1 profilera programu SQL Server
Wyświetla listę procedur składowanych systemu używanych przez program SQL Server Profiler do monitorowania wydajności i aktywności. Procedury składowane profilera programu SQL Server

Zdarzenia rozszerzone vs. SQL Server Profiler

Omówienie zdarzeń rozszerzonych i program SQL Server Profiler to narzędzia do monitorowania wydajności programu SQL Server i rozwiązywania problemów z nimi. Program SQL Server Profiler jest przestarzały i powinien być używany tylko z usługami Analysis Services. Zdarzenia rozszerzone zastępują program SQL Server Profiler i udostępnia zaawansowane możliwości rozwiązywania problemów, które nie są dostępne gdzie indziej. Najważniejsze różnice zostały tutaj zanotowane, aby ułatwić migrację z programu SQL Server Profiler do zdarzeń rozszerzonych.

Narzędzie Zdarzenia rozszerzone

Omówienie zdarzeń rozszerzonych to uproszczony, wysoce skalowalny i elastyczny system obsługi zdarzeń wbudowany w program SQL Server.

Sesje zdarzeń rozszerzonych zwykle zużywają mniej zasobów niż program SQL Trace i SQL Server Profiler, dzięki czemu są bardziej odpowiednie dla środowisk produkcyjnych. Zdarzenia rozszerzone obsługują przechwytywanie zdarzeń, które są dostępne w nowoczesnych wersjach języka SQL.

Z kolei zdarzenia dostępne w narzędziu SQL Trace/SQL Server Profiler są ograniczone do funkcji dostępnych w programie SQL Server 2008R2 i starszych wersjach. Zdarzenia Rozszerzone zapewniają doskonałe możliwości filtrowania, mniejszy ładunek domyślny i funkcje, które nie są oferowane w Profilerze, takie jak cele w pamięci, cele zagregowane i obsługa wielokrotnego docelowania.

Aby uzyskać więcej informacji na temat zdarzeń rozszerzonych, zobacz Omówienie zdarzeń rozszerzonych.

Narzędzie SQL Server Profiler

SQL Server Profiler to graficzny interfejs użytkownika, który używa funkcji SQL Trace do przechwytywania działań dla wystąpienia programu SQL Server lub usług Analysis Services.

Program SQL Server Profiler może być intensywnie obciążany zasobami, jeśli jest nieprawidłowo skonfigurowany, co wpływa na wydajność serwera, szczególnie w przypadku korzystania z serwerów produkcyjnych. Ma wbudowane szablony do ułatwiania szybkiego śledzenia.

Podsumowując, choć sql Server Profiler jest starszym narzędziem, które może być znane wielu użytkownikom, zdarzenia rozszerzone to nowoczesna alternatywa, która oferuje lepszą wydajność, bardziej szczegółowe informacje o zdarzeniach i możliwości rozwiązywania problemów i monitorowania wystąpień programu SQL Server, które nie są dostępne gdzie indziej. Ze względu na swoje zalety nad programem Profiler, Zdarzenia Rozszerzone są zalecane w przypadku nowych prac związanych ze śledzeniem i monitorowaniem.