TiDB Dashboard SQL 语句分析执行详情页面

在列表中点击任意一行可以进入该 SQL 语句的详情页查看更详细的信息,此信息包括三大部分:

  • SQL 语句概况:包括 SQL 模板、SQL 模板 ID、当前查看的时间范围、执行计划个数、执行所在的数据库以及快速绑定执行计划功能(下图区域 1)
  • 执行计划列表:如果一个 SQL 语句有多个执行计划,则显示执行计划列表。除了文本信息显示,TiDB 自 v6.2.0 开始引入图形化执行计划,通过图形化的执行计划,你可以更清晰地了解一个语句的具体算子和对应的内容。可以选择不同的执行计划,在列表和图形下方会显示该执行计划详情(下图区域 2)
  • 执行计划详情:显示选中的执行计划的详细信息,具体见下一小节(下图区域 3)

详情

快速绑定执行计划

自 v6.6.0 起,TiDB 引入了快速绑定执行计划的功能。你可以在 TiDB Dashboard 中,快速完成 SQL 语句与特定计划的绑定。

使用方式

绑定一个执行计划

  1. 点击执行计划绑定 (Plan Binding),弹出弹窗。

    快速绑定执行计划-未绑定-入口

  2. 选择一个需要绑定的执行计划,点击绑定 (Bind)。

    快速绑定执行计划-弹窗

  3. 绑定成功后,可以看到已绑定 (Bound) 提示。

    快速绑定执行计划-弹窗-绑定成功

取消已有的执行计划绑定

  1. 在已经绑定了执行计划的 SQL 语句页面上,点击执行计划绑定 (Plan Binding),弹出弹窗。

    快速绑定执行计划-已绑定-入口

  2. 点击取消绑定 (Drop)。

    快速绑定执行计划-弹窗-绑定成功

  3. 取消成功后,可以看到未绑定 (Not Bound) 提示。

    快速绑定执行计划-弹窗

使用限制

目前还不支持通过 TiDB Dashboard 绑定下列语句的执行计划:

  • SELECTDELETEUPDATEINSERTREPLACE 类型语句
  • 带有子查询的查询
  • 访问 TiFlash 的查询
  • 对三张表或更多表进行 Join 的查询

目前该功能需用户拥有 SUPER 权限才可使用。如果在使用过程中提示权限不足,请参考 TiDB Dashboard 用户管理补充所需权限。

执行计划详情

执行计划详情包括以下内容:

  • SQL 样本:该计划对应的实际执行的某一条 SQL 语句文本。时间范围内任何出现过的 SQL 都可能作为 SQL 样本。
  • 执行计划:执行计划的完整内容,有图形和文本两种展示形式。参阅理解 TiDB 执行计划文档了解如何解读执行计划。如果选择了多个执行计划,则显示的是其中任意一个。
  • 其他关于该 SQL 的基本信息、执行时间、Coprocessor 读取、事务、慢查询等信息,可点击相应标签页标题切换。

执行计划详情

基本信息

包含关于表名、索引名、执行次数、累计耗时等信息。描述 (Description) 列对各个字段进行了具体描述。

基本信息

执行时间

显示执行计划执行的各阶段所耗费时间。

执行时间

Coprocessor 读取

显示 Coprocessor 读取的相关信息。

Coprocessor 读取

事务

显示执行计划与事务相关的信息,比如平均写入 key 个数,最大写入 key 个数等。

事务

慢查询

如果该执行计划执行过慢,则在慢查询标签页下可以看到其关联的慢查询记录。

慢查询

该区域显示的内容结构与慢查询页面一致,详见慢查询页面