是否可以查看谁在针对某个数据库运行 SQL Server Profiler,并且可能来自哪台机器?通过 Profiler 本身或 T-SQL 语句说。
我想知道是否甚至可以找出运行探查器的 Active Directly 用户名。
[更新] 作为参考,这是一种仅检索 SQL Server Profile 进程的方法
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 的内容。从该查询中,您可以定义用户名和主机名...
使用 SQL Profiler 并从应用程序名称“”中查找现有连接和登录事件,
SQL Server Profiler - {guid}
其中 {guid} 因运行而异(默认情况下,SQL Profiler 运行会根据其自己的应用程序名称排除自身。