性能仪表板

适用于:SQL ServerAzure SQL 托管实例

SQL Server Management Studio 版本 17.2 及更高版本包括性能仪表板。 此仪表板旨在直观地深入了解 SQL Server 和 Azure SQL 托管实例的性能状态。

性能仪表板有助于快速识别 SQL Server 或 Azure SQL 数据库是否遇到性能瓶颈。 如果发现瓶颈,请轻松捕获可能需要解决该问题的额外诊断数据。 性能仪表板可帮助识别的一些常见性能问题包括:

  • CPU 瓶颈(以及哪些查询正占用最多的 CPU)
  • I/O 瓶颈(以及哪些查询正执行最多的 I/O)
  • 查询优化器生成的索引建议(缺失索引)
  • 阻塞
  • 资源争用(包括闩锁争用)

性能仪表板还有助于识别可能以前执行的昂贵查询,并且可以使用多个指标来定义高成本:CPU、逻辑写入、逻辑读取、持续时间、物理读取和 CLR 时间。

性能仪表板分为以下各部分和子报表:

  • 系统 CPU 使用率

  • 当前等待请求

  • 当前活动

    • 用户请求
    • 用户会话
    • 缓存命中率
  • 历史信息

    • 等待
    • 闩锁
    • I/O 统计信息
    • 耗费大量资源的查询
  • 其他信息

    • 活动跟踪
    • 活动 XEvent 会话
    • 数据库
    • 缺失索引

查看性能仪表板

若要查看性能仪表板,请在对象资源管理器中右键单击 SQL Server 实例名称,选择 “报表”、“ 标准报表”,然后选择“ 性能仪表板”。

菜单中性能仪表板的屏幕截图。

性能仪表板显示为新选项卡。下面是一个明显存在 CPU 瓶颈的示例:

性能仪表板主屏幕的屏幕截图。

注解

“缺失索引”报表显示查询编译期间查询优化程序识别的可能缺少的索引。 但是,不应在面值上提出这些建议。 Microsoft建议评估评分大于 100,000 的索引进行创建,因为这些索引对用户查询的预期改进最高。

提示

始终评估新索引建议是否与同一表中的现有索引相当,只需更改现有索引而不是创建新索引即可实现相同的实际结果。 例如,给定针对列 C1的新建议索引, C2 并且 C3首先评估是否存在针对列 C1 的现有索引和 C2。 如果是这样,则最好将列 C3 添加到现有索引(保留预先存在的列的顺序),以避免创建新索引。 有关详细信息,请参阅 SQL Server 以及 Azure SQL 索引体系结构和设计指南

“等待”报表可筛选出所有空闲和睡眠的等待。 有关等待的详细信息,请参阅 sys.dm_os_wait_statsSQL Server 2005 使用等待和队列优化性能

SQL Server 重启时耗费大量资源的查询报表将重置,因为基础 DMV 中的数据已被清除。 在 SQL Server 2016(13.x)及更高版本中,可以在查询存储中找到有关昂贵查询的详细信息。

注意

虽然 SQL Server Management Studio 报表呈现器不支持剪贴板访问报表中包含的文本,但可以通过独立报表访问文本。 如果需要从报表复制查询文本,请下载独立报表。

权限

SQL Server 需要 VIEW SERVER STATEALTER TRACE 权限。

Azure SQL 托管实例需要 VIEW DATABASE STATE 数据库中的权限。