Назад | Перейти на главную страницу

Можно ли отследить, кто запускает SQL Server Profiler?

Можно ли увидеть, кто запускает SQL Server Profiler для определенной базы данных и, возможно, с какой машины? Скажите через Profiler или с помощью оператора T-SQL.

Интересно, можно ли вообще узнать имя пользователя Active Directly, под которым работает профилировщик.


[ОБНОВИТЬ] В качестве справки, вот способ получить только процессы профиля SQL Server.

declare @sp_who2 table (
    SPID    int,
    status  varchar(50),
    login   varchar(100),
    HostName    varchar(100),
    BlkBy   varchar(100),
    DBName  varchar(100),
    Command varchar(100),
    CPUTime int,
    DiskIO  int,
    LastBatch   varchar(50),
    ProgramName varchar(150),
    SPID2   int,
    REQUESTID   int
)
insert  @sp_who2
exec sp_who2

select  *
from    @sp_who2
where   ProgramName like 'SQL Server Profiler - %'

Выполнить

sp_who2

Посмотрите на столбец ProgramName, и вы увидите что-то вроде SQL Server Profiler - 362b6154-2d69-4ce0-987b-2573bed3ce45. Из этого запроса вы можете определить имя пользователя и HostName ...

использовать SQL Profiler и искать существующие подключения и события входа в систему из имени приложения "SQL Server Profiler - {guid}"где {guid} зависит от запуска (и по умолчанию запуски SQL Profiler исключают себя на основе собственного имени приложения.