SQL Server 执行计划审查工作流
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/review-sql-server-execution-plans-through-an-mcp-compatible-analysis-workflow-with-performance-studio。
技能介绍
要解决什么问题
拿到一份 .sqlplan 文件时,团队通常只能打开图形界面肉眼扫一遍。执行计划里动辄几百个 operator 节点,人工看会漏掉三类问题:行数估计严重偏离实际导致的并行度选择错误、缺失索引造成的反复查找与扫描、以及 Cardinality Estimate 版本差异引入的意外计划。这些信号散落在不同节点上,靠人逐条核对既慢又不稳定,也很难把结论沉淀成一次可复核的调优记录。
技能如何工作
这个技能把 Performance Studio 的分析能力包装成 MCP 兼容的工作流,让 agent 可以直接消费执行计划证据。核心能力包括:
- 解析
.sqlplan文件:读取 XML 执行计划,还原 operator 节点树与运行时统计。 - 输出分级警告:每条警告包含严重级别(
Info/Warning/Critical)、operator 节点 ID,以及足够立即动手的上下文,不需要再回到文件里翻节点。 - 提取缺失索引建议:直接给出可运行的
CREATE语句,而不是只列出指标让人自己推导。 - 形成可评审流程:把执行计划证据转成一次可复查的调优工作流,便于团队评审结论与后续回归验证。
实际输出形如:
[Critical] Parallelism (Node 0): Estimated 1 rows, actual 2,889 (2889x underestimated).
这类信息直接指出节点 ID、估计值与实际值的偏差倍数,定位成本很低。
适用边界与注意点
- 依赖 Performance Studio,可通过其内置 MCP server 或 CLI 接入,需要
.NET 8 SDK才能构建运行。 - 文件分析不要求 SQL Server 实例;只有做实时计划抓取时才需要可达的 SQL Server 环境。macOS/Linux 可用 Docker 起一个实例,但不是必须。
- 索引建议是 SQL Server 自己给出的参考,仍需结合写入成本、已有索引与实际查询形态评估,不要盲目上线。
- 警告条目基于上游 Performance Studio 文档的既定能力,具体覆盖的诊断规则以该上游版本为准。
使用场景
- 拿到 SQL Server 导出的 .sqlplan 文件,需要在自动化流程里解析并列出 Critical 与 Warning 级性能警告
- 排查慢查询时,需要从执行计划中提取缺失索引建议,并得到可直接运行的 CREATE 语句
- 已有 SQL Server 实例或 Docker 环境,需要通过 MCP 兼容 agent 抓取实时执行计划并生成可复查的调优记录
- 梳理并行度相关异常时,需要定位具体 operator 节点并查看估计行数与实际行数的偏差
适合人员
- 负责 SQL Server 性能排查的 DBA,需要在部署或扩容前快速复核执行计划中的风险点
- 编写数据库调优脚本的工程师,需要把缺失索引建议转成可提交评审的 SQL 变更
- 搭建 MCP 兼容运维流水线的平台工程师,需要把执行计划分析嵌入 agent 工作流
- 使用 Docker 本地验证 SQL Server 性能问题的开发者,需要离线分析 .sqlplan 文件而不连接实例