配置MS SQL Server以记录查询及其执行时间

时间:2013-06-19 21:14:48

标签: sql sql-server logging tracking database-performance

我有一个程序使用SQL连接器连接到MS SQL 2012,我想知道SQL查询执行时间。我知道有一个SQL Server Profiler,但我无法正确配置它以捕获任何查询执行时间。我也知道我可以在程序中添加计时器,但我不能轻易地更改代码。      欢迎所有建议。感谢

2 个答案:

答案 0 :(得分:1)

AFAIK SQLConnector用于MySQL,所以我不明白你如何使用SQLServer 2012.

如果您需要在SQLServer中进行性能分析 - 没有比SQL Server Profiler更好的了。

  

我无法正确配置它以捕获任何查询执行时间

一定很容易:

  1. 事件选择 - 您需要SQL:Stmt已完成(取消选中其他所有内容)。您需要选择持续时间。
  2. 列过滤器 - 按登录名创建过滤器(如果需要,请进行特殊登录),TextData,Spid(如果可以弄清楚如何获取)

答案 1 :(得分:0)

默认情况下不支持此功能,但您可以根据需要使用多种技术来执行此操作。

您是否需要捕获包括SELECT在内的所有语句?如果是,那么我建议你仍然使用SQL Server Profiler或SQL Server Traces

如果您只需要捕获DML语句(不包括SELECT),您可以尝试在要审核的表上设置触发器。

还有一些DDL触发器可以帮助您捕获DDL语句(据我所知,没有办法使用DDL触发器捕获所有DDL语句)。

所以,这里有很多选择,但这完全取决于你的需求。