自动SQL Server慢查询报告?

时间:2017-12-20 21:37:09

标签: sql-server

我是开发人员和性能测试人员,但不是DBA。我的团队正在开发一种特定于我们软件的性能测试工具。我们希望它具有的功能之一是能够在测试后立即生成数据库报告。我们的软件与数据库无关。对于Oracle,我可以在测试之前和之后轻松创建快照ID,并以编程方式为这些快照创建AWR报告,写入文件并与我们收集的其他工件一起保存。效果很好。

但是,对于SQL Server,没有AWR等价物(我知道)。我知道MDW作为SSMS的一部分有一个用于获取前10个慢速SQL等内容的UI。但是,我还没有找到一种方法来以编程方式为SQL Server创建和提取SQL性能报告(最好类似于Oracle的AWR)。

如果我能找到提取原始数据的方法,我甚至愿意自己创建报告。

任何想法都将受到高度赞赏,因为在线搜索并没有让我到任何地方。

谢谢! 汤姆

P.S。顺便说一下,我试图用Java做这件事,但会接受任何语言的帮助。再次感谢!

1 个答案:

答案 0 :(得分:0)

好消息!在SQL Server 2016中,您可以使用Query Store。这就像你的飞行记录器blackbox ..找到长时间运行的查询并等待。捕获SQL Server内置的基线。您可以在硬件更改和/或查询升级之前和之后进行比较。也许这与Oracle AWR类似。

仅适用于SQL Server 2016及更高版本。