我有一个繁忙的 SQL 2012 服务器,其中到一个特定数据库的连接(使用相同的 SQL 登录)不显示“主机名”,我需要找出这些连接来自哪个(几个)框。
我已经尝试了所有正常的内置和第三方工具(master.sys.processes
,sys.dm_exec_sessions
,sp_who2
,sp_WhoIsActive
,SSMS的活动监视器,甚至是SQL事件探查器和井寺诊断经理),他们都不能给我的服务器的主机名/客户端这些连接背后,大概是因为它们都使用相同的底层系统表/视图。
我也可以使用 IP 地址,但也看不到任何方法可以从 SQL 中确定该地址。
如果这是任何帮助:
sys.dm_exec_sessions
显示client_interface_name
是 ODBCprogram_name
两者都没有捕获我在这里找到了一个相关的问题(尽管来自另一边),但没有得到解答。
在这一点上,我很想禁用用户,以便我可以在 SQL 错误日志中捕获一些失败的登录,但我认为应用程序团队不会对此感到满意。