gpt4 book ai didi

sql - 跟踪每个 T-SQL 语句的等待统计信息

转载 作者:行者123 更新时间:2023-12-02 00:28:02 25 4
gpt4 key购买 nike

我正在创建一个应用程序,用于跟踪 SQL Server 中服务器上执行的每个查询的一些特定性能相关统计信息。我可以通过SQL Trace获得大部分信息或者更具体地说,使用 StatementCompletedBatchCompleted事件类。

对上述事件使用 SQL Trace 可以得到除等待统计信息之外的所有信息。我知道我可以从两个动态管理 View 和函数中分别获取等待统计信息sys.dm_os_wait_statssys.dm_os_waiting_tasks .

我需要找到一种方法以某种方式将这两个信息组合在一起,以便我可以确定每个查询的等待统计信息。例如,我需要能够回答这样的问题:查询 X 在开始执行之前必须等待 IO 或 CPU 资源多长时间?

我无法准确回答这个问题,因为 SQL Trace 没有给我这个信息。 是否可以从 SQL Server 获取服务器上正在执行的每个语句的等待统计信息?

最佳答案

如果您使用的是 SQL Server 2008,则可以使用扩展事件来捕获在感兴趣的 spid 上过滤的 sqlos.wait_info 事件的详细信息。

参见 SQLSkills: Capturing wait stats for a single operation例如代码。

关于sql - 跟踪每个 T-SQL 语句的等待统计信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8121361/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com