SQL事件探查器(SQL Server 2000),如何只过滤我的活动?

时间:2009-12-18 12:04:29

标签: sql-server sql-server-2000 sqlprofiler

我们有一个拥有数百个并发用户的大型系统,因此如果没有适当的过滤器,sql profiler会提供太多信息。我想看看我的帐户和我的帐户下运行的SQL命令是什么。帐户是指我用来登录系统的用户名。这些用户名存储在常规数据库表中,因此不能输入到sql profiler中的任何过滤器,我想?但是,即使您使用相同的SQL登录/用户,每个登录的用户都可能拥有一些唯一的ID?

那么,问题主要是如何获得该唯一值以及使用哪个过滤器?或者有没有办法在sql profiler中看到这个和只有这个?

2 个答案:

答案 0 :(得分:20)

您应该能够获得连接到SQL Server的计算机的主机名。在跟踪属性/事件部分标签中,勾选显示所有列选项,然后在列过滤器中指定 HostName

如果您想知道正在使用的计算机的主机名,请在命令提示符下键入hostname

答案 1 :(得分:3)

每个连接到SQL Server的appilcation都有一个唯一的主机ID(HOST_ID()函数返回的值),您可以对其进行过滤。当然,首先你必须从你的应用程序连接到数据库,以获得你的主机ID。

也可以在hostprocess系统表的sysprocesses列中找到主机ID。在Profiler中,它被称为ClientProcessId