我正在尝试使用缓慢运行查询的脚本。我了解我们可以使用sys.dm_exec_requests获取运行缓慢的查询列表。说,我有一个查询Q1运行速度非常慢,比如1小时。直到Q1正在运行,即执行,我可以使用sys.dm_exec_requests DMV跟踪它。如果我理解正确,一旦Q1完成,其统计数据将不再可用于此DMV。相反,我们需要查看sys.dm_exec_query_stats。但是,如何获取特定查询Q1的统计信息,该查询一直在慢速运行?这意味着我如何关联我之前在sys.dm_exec_requests和sys.dm_exec_query_stats中获得的数据?
答案 0 :(得分:1)
由于您在如此广泛的版本中运行,因此您必须使用最低的公分母,即SQL跟踪。设置到存储过程的跟踪完成,并且ad hoc语句完成需要的时间超过某个阈值。然后在服务器端运行并每隔一段时间查看一次输出。
值得注意的是,如果2005年没有合并,我建议延长活动。