性能仪表板
适用于: SQL Server Azure SQL 托管实例
SQL Server Management Studio 版本 17.2 及更高版本包括性能仪表板。 此仪表板旨在直观地快速了解 SQL Server(从 SQL Server 2008 (10.0.x) 开始)和 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 添加到现有索引(保留预先存在的列的顺序)以避免创建新索引会更可取。 有关详细信息,请参阅索引体系结构和设计指南。
“等待”报表可筛选出所有空闲和睡眠的等待。 有关等待的详细信息,请参阅 sys.dm_os_wait_stats (Transact-SQL) 和使用等待和队列优化 SQL Server 2005 性能。
SQL Server 重启时耗费大量资源的查询报表将重置,因为基础 DMV 中的数据已被清除。 从 SQL Server 2016 (13.x) 开始,耗费大量资源的查询的详细信息可以在查询存储中找到。
注意
性能仪表板首次作为 SQL Server 2005 的独立下载发布,之后又针对 SQL Server 2012 进行了更新。 虽然 SQL Server Management Studio 报表呈现器不支持剪贴板访问报表中包含的文本,但可通过独立报表访问这些文本。 如果需要复制报表中的查询文本,请下载独立报表。
权限
在 SQL Server 上,需要 VIEW SERVER STATE
和 ALTER TRACE
权限。
在 Azure SQL 数据库上,需要在数据库中拥有 VIEW DATABASE STATE
权限。
另请参阅
监视和优化性能
性能监视和优化工具
打开活动监视器 (SQL Server Management Studio)
活动监视器
相关视图、函数和过程