Как ограничить трассировку SQL Server Profiler конкретной базой данных? Я не вижу, как отфильтровать трассировку, чтобы не видеть события для всех баз данных в экземпляре, к которому я подключаюсь.
Как ограничить трассировку SQL Server Profiler конкретной базой данных? Я не вижу, как отфильтровать трассировку, чтобы не видеть события для всех баз данных в экземпляре, к которому я подключаюсь.
Ответы:
Под Свойства трассировки> вкладка Выбор событий> выберите показать все столбцы. Теперь под фильтрами столбцов вы должны увидеть имя базы данных. Введите имя базы данных для раздела «Мне нравится», и вы увидите следы только для этой базы данных.
before
начиная трассировку. Если вы сделаете это после - поле не будет редактируемым!
В SQL 2005 сначала необходимо отобразить столбец «Имя базы данных» в вашей трассировке. Проще всего выбрать шаблон Tuning, в который уже добавлен этот столбец.
Предполагая, что у вас выбран шаблон настройки, для фильтрации:
Я тоже всегда сохраняю трассировку в таблице, чтобы после факта я мог выполнять LIKE-запросы к данным трассировки.
Экспериментально я смог наблюдать это:
Когда SQL Profiler 2005 или SQL Profiler 2000 используется с базой данных, находящейся в SQLServer 2000 - упомянутая проблема сохраняется, но когда SQL Profiler 2005 используется с базой данных SQLServer 2005, она работает отлично!
В заключение, проблема, кажется, распространена в SQLServer 2000 и исправлена в SQLServer 2005.
Решение проблемы при работе с SQLServer 2000 (как объяснено wearejimbo)
Определите DatabaseID базы данных, которую вы хотите отфильтровать, запросив таблицу sysdatabases, как показано ниже
SELECT *
FROM master..sysdatabases
WHERE name like '%your_db_name%' -- Remove this line to see all databases
ORDER BY dbid
Используйте фильтр DatabaseID (вместо DatabaseName) в окне «Новая трассировка» SQL Profiler 2000
В свойствах трассировки перейдите на вкладку « Выбор событий » вверху рядом с « Общие» . Затем нажмите Фильтры столбцов ... внизу справа. Затем вы можете выбрать, что фильтровать, например, TextData
или DatabaseName
.
Разверните узел « Мне нравится» и введите фильтр с процентными %
знаками, такими как %MyDatabaseName%
или %TextDataToFilter%
. Без %%
знаков фильтр работать не будет.
Кроме того, обязательно установите флажок Исключить строки, которые не содержат значений. Если вы не можете найти поле, которое хотите отфильтровать, например, DatabaseName
перейдите на вкладку Общие и измените шаблон , пустое поле должно содержать все поля.
Создайте новый шаблон и проверьте имя DB. Используйте этот шаблон для своего файла трассировки.