SQL 效果报告 - 但针对日期范围

SQL Performance Reports - but for a date range

SQL 服务器附带非常方便的 "performance" 报告:在 SSMS 中 - 右键单击​​服务器 - "reporting" - "Standard" - 你会看到许多有用的报告,例如"Top queries by Total CPU time"、"Top queries by average I/O"等

这些报告汇总了自上次重新启动或自上次查询统计信息重置以来的数据。

有什么方法可以查看某个日期范围的这些报告吗?喜欢 "Top queries by total CPU time from 10pm to 11pm"?也许有一个 SQL 应该安装的服务器插件或服务之类的东西,这将允许这种或研究?

现实生活中的用例:DBA 醒来发现夜间出现了一些 "timeout" 错误。他想查看目前哪些查询 运行 并消耗了性能。

您可以从 here 下载 SSMS 性能仪表板报告,并将其用作 SQL Server 2008、SQL Server 2008 R2、SQL Server 2012 的自定义报告, SQL Server 2014。访问 rdl 文件后,您可以根据需要对其进行自定义。

同样值得一读this

在 SQLShack 上找到了这个系列的博文,建议安装 "Data Collectors" 来持续记录性能数据,以便稍后分析:SQL Server performance monitoring with Data Collector