Jak ograniczyć śledzenie programu SQL Server Profiler do określonej bazy danych? Nie widzę sposobu filtrowania śledzenia, aby nie wyświetlać zdarzeń dla wszystkich baz danych w instancji, z którą się łączę.
Jak ograniczyć śledzenie programu SQL Server Profiler do określonej bazy danych? Nie widzę sposobu filtrowania śledzenia, aby nie wyświetlać zdarzeń dla wszystkich baz danych w instancji, z którą się łączę.
Odpowiedzi:
W obszarze Właściwości śledzenia> karta Wybór zdarzeń> wybierz pokaż wszystkie kolumny. Teraz pod filtrami kolumn powinieneś zobaczyć nazwę bazy danych. Wpisz nazwę bazy danych dla sekcji Like, a powinieneś zobaczyć ślady tylko dla tej bazy danych.
beforerozpoczynając śledzenie. Jeśli zrobisz to później - pola nie będzie można edytować!
W SQL 2005 najpierw musisz wyświetlić kolumnę Nazwa bazy danych w swoim śladzie. Najłatwiej jest wybrać szablon Tuning, który ma już tę kolumnę.
Zakładając, że masz wybrany szablon dostrajania, aby filtrować:
Zawsze zapisuję również ślad w tabeli, aby po fakcie móc wykonać zapytania JAK na danych śledzenia.
Dzięki eksperymentowi mogłem to zaobserwować:
Kiedy SQL Profiler 2005 lub SQL Profiler 2000 jest używany z bazą danych rezydującą w SQLServer 2000 - wspomniany problem występuje nadal, ale gdy SQL Profiler 2005 jest używany z bazą danych SQLServer 2005, działa idealnie!
Podsumowując, problem wydaje się występować w SQLServer 2000 i został naprawiony w SQLServer 2005.
Rozwiązaniem problemu związanego z SQLServer 2000 jest (jak wyjaśniono wearejimbo)
Zidentyfikuj identyfikator bazy danych bazy danych, którą chcesz filtrować, sprawdzając tabelę sysdatabases, jak pokazano poniżej
SELECT *
FROM master..sysdatabases
WHERE name like '%your_db_name%' -- Remove this line to see all databases
ORDER BY dbidUżyj filtru DatabaseID (zamiast DatabaseName) w oknie New Trace programu SQL Profiler 2000
We właściwościach śledzenia kliknij kartę Wybór zdarzeń u góry obok Ogólne . Następnie kliknij Filtry kolumnowe ... w prawym dolnym rogu. Następnie możesz wybrać elementy do filtrowania, takie jak TextDatalub DatabaseName.
Rozwiń węzeł Like i wprowadź filtr ze %znakami procentowymi, takimi jak %MyDatabaseName%lub %TextDataToFilter%. Bez %%znaków filtr nie będzie działać.
Ponadto zaznacz pole wyboru Wyklucz wiersze, które nie zawierają wartości ”. Jeśli nie możesz znaleźć pola, które chcesz filtrować, na przykład DatabaseNameprzejdź do karty Ogólne i zmień szablon , puste pole powinno zawierać wszystkie pola.
Utwórz nowy szablon i sprawdź DBname. Użyj tego szablonu dla swojego pliku śledzenia.