我是一名开发人员,帮助 DBA 解决零星的 CPU 100% 问题。
请参阅下面的 SQL 查询:
Select spid,hostname,hostprocess,program_name,nt_username, blocked, waittime, waittype, loginame,cmd,spid,waittype,waittime,lastwaittype,cpu,physical_io,memusage,
login_time,last_batch,open_tran,status,net_address, t.text
from sys.sysprocesses sp
CROSS APPLY( select text from sys.dm_exec_sql_text(sp.sql_handle))t
where hostname = 'MyOtherDatabaseServer'
它返回一条记录。然后我在 MyOtherDatabaseServer 上执行以下命令:
EXECUTE sp_WhoIsActive
有没有办法可以将服务器 1 上的结果与服务器 2 上的结果联系起来?我希望 sp_WhoIsActive 会为每条记录返回一个进程 ID(因为第一个查询中有一个 HostProcess ,所以会绑定它们)。
服务器 1 和 MyOtherDatabaseServer 之间有一个链接服务器设置。我正在尝试查找“服务器 1”上的哪个数据库正在使用链接服务器并在 MyOtherDatabaseServer 上运行查询。