跟踪Microsoft SQL Server活动

时间:2010-08-24 09:04:11

标签: sql-server sql-server-2005

我有一个非常奇怪和复杂的情况。我从一个SQL Server表中删除了数据,我不确定应用程序是什么。我希望能够跟踪这一点。

我确信你想知道如何在这种情况下找到自己,这里有一些背景知识。我们有2台服务器,分别运行IIS6和SQL Server 2005的Web和数据库。他们是由以前的开发人员设置的,他离开了公司而没有给我任何关于系统的介绍,所以我只是“寻找”所有东西。我已经能够自己找出大部分系统,除此之外,这仍然是一个谜。我所知道的只是:

  1. 每天都会在设定的时间删除数据(我已设置TRIGGER来捕获此数据)
  2. 它不是SQL Server代理作业
  3. 它不是Windows预定任务
  4. 它不是Windows服务
  5. 所有数据库登录都是使用 sa 用户完成的,因此登录历史记录对我无法帮助...(再次,我没有设置它)
  6. 我怎么调试这样的东西?如果有的话,我想知道这是来自数据库服务器上运行的东西,还是来自外部源的请求。请帮忙: - )

1 个答案:

答案 0 :(得分:1)

如果您知道发生的时间,那么您应该在那时设置一个SQL Profiler跟踪来捕获正在发送的语句。

这将显示正在发送的SQL,连接的spid,用户名,连接发送的应用程序名称以及其他有用信息,以追踪罪魁祸首。

如果它发生的时间不方便你这样做,你可以编写SQL跟踪脚本(比运行完整的GUI更轻量级)

编辑:使用它时要小心,不要记录太多让您陷入服务器的信息。例如,您可以过滤感兴趣的数据库上的活动。