Есть ли альтернатива SQL Profiler для SQL Server 2000 - PullRequest
2 голосов
/ 23 сентября 2008

Я пытаюсь оптимизировать некоторые хранимые процедуры в базе данных SQL Server 2000, и когда я пытаюсь использовать SQL Profiler, я получаю сообщение об ошибке «Чтобы выполнить трассировку для SQL Server, необходимо быть участником фиксированного сервера sysadmin роль.". Похоже, что только члены роли sysadmin могут запускать трассировки на сервере (что было исправлено в SQL Server 2005), и ни в коем случае не получится, что мне предоставят эту роль сервера (политики компании)

Сейчас я вставляю текущее время минус время начала процедуры на разных этапах кода, но я нахожу это очень утомительным

Я также думал о репликации базы данных для локальной установки SQL Server, но хранимая процедура использует данные из множества различных баз данных, и я потрачу много времени на локальное копирование данных

Так что мне было интересно, есть ли другой способ профилирования кода SQL? (Сторонние инструменты, разные практики, что-то еще)

Ответы [ 3 ]

1 голос
/ 23 сентября 2008

Ваши руки связаны без профилировщика.

Однако вы можете начать с настройки существующих запросов с помощью Query Analyzer или любой инструмент запроса и изучения планов выполнения. С QA вы можете использовать опция Показать план выполнения. Из других инструментов вы можете использовать

SET STATISTICS PROFILE ON / OFF
1 голос
/ 14 октября 2008

В SQL 2000 существует обходной путь, позволяющий запутать диалоговое окно соединения Profiler, чтобы ограничить соединение sysadmin только запущенными трассировками.

SQLTeam

Блог

1 голос
/ 23 сентября 2008

В анализаторе запросов:

SET STATISTICS TIME ON

SET STATISTICS IO ON

Запустите запрос и посмотрите на вкладку сообщений.

Мне кажется, что для этого могут потребоваться те же привилегии, но стоит попробовать.

...