SQL Server作业(存储过程)跟踪

时间:2010-05-18 21:56:18

标签: sql-server trace sql-agent-job

我需要你的建议来追查这个问题。

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

在暂存环境(恢复相同的生产数据库)上运行作业步骤(存储过程)需要9到10分钟,生产服务器在作为工作的一部分清晨运行时需要数小时。生产服务器总是处于工作阶段。

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

SQL Server 2005中有哪些方法可以实现相同的目标?我想仅为这些SP运行跟踪,而不是在生产服务器上运行一段时间段,因为跟踪提供了大量信息,我(很难不是DBA)很难分析大量的跟踪信息并弄清楚问题。所以我想收集有关特定SP的信息。

让我知道你的建议。

感谢您的时间和帮助。

感谢。

2 个答案:

答案 0 :(得分:1)

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

  • 创建新跟踪
  • 仅选择存储过程(RPC:已完成)
  • 选中“TextData”以查看要阅读的列
  • 点击“列过滤器”按钮
  • 从左侧导航栏中选择“TextData”
  • 展开“赞”树视图,然后输入您的程序名称
  • 选中“排除不包含值的行”
  • 点击“确定”,然后点击“运行”

答案 1 :(得分:0)

当服务器上的其他服务器在其他服务器上运行速度更快而不是生产时,服务器上发生的其他事情非常重要。也许你遇到了统计或索引工作的日常备份或维护?