首批通过分布式安全可靠测评,为关键业务系统打造
TopSQL 诊断
更新时间:2023-08-15 19:21:43
TopSQL 是指总计执行时间最长的 SQL 语句,在租户概览页面中,您可以根据时间范围、OBServer 对 TopSQL 进行筛选查询,并在 SQL 列表中查看 SQL 详情。
操作步骤
在左导航栏单击 租户 ,并在 租户列表 中单击具体的租户进入租户 总览 页面。
在左侧导航栏单击 SQL 诊断 ,进入 SQL 诊断 页面。
若集群参数 enable_sql_audit 和租户参数 ob_enable_sql_audit 中任何一个未配置成打开,则 SQL 诊断 页面将缺失 SQL 诊断数据。可通过提示中的按钮修改参数值。

单击 TopSQL 页签。
对 TopSQL 进行筛选。
配置筛选条件
时间范围:可在 时间范围 下拉框中选择 近 5 分钟、近 10 分钟、近 20 分钟、近 30 分钟、近 1 小时、近 3小时来快速选择时间范围;也可在下拉框中选择自定义时间,并配置开始时间和结束时间。默认显示近 30 分钟内的信息。
OBServer:选择 OBServer,查询时将只查询在该 OBServer 上执行的 SQL。
内部 SQL:若勾选,则查询结果中会包含由 OceanBase 内部发起的 SQL。
关键词:查询结果中会显示 SQL 文本中包含该关键词的 SQL。
高级搜索:下拉框中选择 SQL ID、执行次数、每秒执行次数 等指标,并配置指标值,查询时将获取指标满足条件的 SQL 展示在查询结果列表中。

单击 查询 ,下方列表中将展示所有符合查询条件的 SQL。
单击 导出 TopSQL 按钮,将导出列表中展示的所有 SQL。
查看 TopSQL 信息。
单击 列管理 ,即可在弹出框中选择需要查看的信息。勾选完成后即可在 TopSQL 列表中查看到相关信息。

在 TopSQL 页签下, 可查看已配置展示的列。可复制 SQL 文本,根据数据库和用户对 SQL 文本进行筛选,根据执行次数、总响应时间、响应时间和 CPU 时间对 SQL 文本进行排序。

单击 SQL 文本,您可进入具体 SQL 页面。
在 SQL 详情 页中,您可查看该 SQL 的详细信息,包括:
在 SQL 文本 处查看 SQL 的完整语句。
在 历史趋势 页签,查看该 SQL 运行的历史趋势,详见 查看 SQL 运行的历史趋势。
在 执行计划 页签,查看该 SQL 的执行计划,或为其绑定执行计划,详见 查看 SQL 的执行计划。
在 索引 页签,查看该 SQL 的绑定的索引,详见 查看和绑定索引。
在 SQL 限流 页签,查看该 SQL 的限流情况,或为其设置限流,详见 设置 SQL 限流。
在 执行计划 、 索引 、 SQL 限流 页签的图示 ① 处,均可查看该 SQL 的绑定记录。

在绑定记录中您可查看到已绑定计划的状态,可通过 取消绑定 按钮将 SQL 与该计划解绑,也可通过 绑定计划 按钮将二者再次绑定。