2010-05-18 105 views
0

我需要您的建议来跟踪问题。SQL Server作业(存储过程)跟踪

我们在清晨运行数据加载作业,并将Excel文件中的数据加载到SQL Server 2005 db中。当作业在生产服务器上运行时,很多时候需要2到3小时才能完成任务。我们可以深入到一个占总时间99%完成的工作步骤。

在分段环境(恢复同一生产数据库)上运行作业步骤(存储特效程序)需要9到10分钟,而作为作业的一部分在清晨运行时,生产服务器也需要数小时。生产服务器始终坚持在工作的一步。

我想在工作步骤上运行跟踪(在作业步骤中,while循环中为每个用户运行约10个存储过程)并收集信息以找出问题。

SQL Server 2005实现相同的方式有哪些?我只想为这些SP运行跟踪,而不是在生产服务器的某个时间段运行跟踪,因为跟踪提供了大量信息,对于我(作为不是DBA)来说,分析那么多跟踪信息并找出问题变得非常困难问题。所以我只想收集有关特定SP的信息。

让我知道你的建议。

感谢您的时间和帮助。

谢谢。

回答

0

当时在服务器上发生的其他事情在其他服务器上更快但不是产品时很重要。也许你正在进入日常备份或维护统计或索引工作?

+0

当时只有数据加载作业正在发生(在特定间隔30个作业)。在此期间没有安排其他事情。 – Jit 2010-05-19 03:10:26

1

使用SQL事件探查器。它允许您跟踪大量事件,包括存储过程,甚至将过滤器应用于跟踪。

  • 创建一个新的跟踪
  • 选择只是存储过程(RPC:已完成)
  • 检查 “的TextData” 为列读
  • 单击 “列筛选” 按钮
  • 选择 “的TextData”从左侧导航
  • 展开“赞”树视图,然后键入您的过程名称
  • 选中“排除不包含值的行”
  • 单击“确定”,然后单击“运行”
+0

明天我会试试这个。谢谢。 – Jit 2010-05-19 03:11:11

+0

非常感谢,这工作。 – Jit 2010-05-25 22:19:58