SQL Server 活动监视器显示所有查询

问题描述 投票:0回答:3

我正在使用 SQL Server 2005,我想知道是否有可能监视发送到 SQL Server 的每个查询?

SQL Server Management Studio 有一个名为“活动监视器”的内置工具,它几乎为我提供了在“最近昂贵的查询窗格”中搜索的内容

此窗格显示有关过去 30 秒内在实例上运行的最昂贵查询的信息。

我最近的所有查询都需要这个,而不仅仅是昂贵的查询......

有人可以帮助我吗?

命名一个工具,或者给我提示要搜索什么...

sql sql-server monitoring
3个回答
32
投票

要使用 SQL Profiler 监视发送到 SQL Server 的每个查询,您可以使用 SQL Profiler 预定义模板之一。这是 TSQL_Duration。

enter image description here

它旨在跟踪已完成的存储过程和 TSQL 代码。

enter image description here

跟踪将准确显示执行的批次。

enter image description here

您可以展开跟踪的事件和显示的列。您可以在此处找到更多信息:如何:使用 SQL Profiler

ApexSQL Comply中也提供了相同的功能,这是一种审核工具,它使用 SQL 跟踪来捕获事件,然后将它们存储在中央存储数据库中,并提供内置和自定义报告,您可以在其中轻松过滤事务,并将它们导出为 Excel、Word 或 PDF 文件。

enter image description here

enter image description here 免责声明:我在 ApexSQL 担任支持工程师


9
投票

您正在寻找 SQL Profiler,它通常与 SSMS 一起安装。


0
投票

Sql Server Management Studio (SSMS) 中的 SQL Profiler 非常好,下面介绍如何执行此操作:

监控所有查询

工具 >> SQL Server Profiler

您连接到服务器,然后从分析模板开始:空白

然后在事件选择选项卡中选择显示所有事件显示所有列

然后向下滚动并展开性能区域,然后选择复选框:

展示计划全部

显示计划XML

然后向下滚动到存储过程并检查:

RPC:开始

SP:Stmt已完成

SP:Stmt已完成

应该可以了。

showplan All 很酷,它的顶行给出了 SQL planner 对这些成本的估计:

EstimateRows EstimateIO EstimateCPU AvgRowSize TotalSubtreeCost 输出列表

© www.soinside.com 2019 - 2024. All rights reserved.