更新时间:2023-12-07 GMT+08:00

SQL诊断

您可以通过SQL诊断功能诊断SQL语句并查看SQL语句优化建议。

使用须知

  • 仅支持MySQL InnoDB引擎。
  • 仅支持select/insert/update/delete语句诊断,其中insert必须带select子句。
  • 暂不支持查询information_schema、test、mysql 等保留库的语句。
  • 暂不支持使用视图的语句。
  • SQL诊断功能会获取相关表结构和数据分布信息(非原始数据),该信息仅用于诊断逻辑,不会存储到DAS服务器。
  • 获取表结构和数据分布信息的过程中,可能会对实例带来额外负载,但对性能影响甚微。
  • SQL诊断历史是唯一存储在DAS服务器上的数据,如果执行删除操作后,也将彻底从服务器上删除。
  • 格式化用于提高SQL语句易读性,只是转换SQL语句的显示形式,不会修改SQL的执行逻辑和语义。
  • 格式化是对整个SQL窗口内所有SQL语句进行格式化,暂不支持选中多条语句中的某一条进行格式化。

操作步骤

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域和项目。
  3. 单击页面左上角的,选择“数据库 > 数据管理服务 DAS”,进入数据管理服务页面。
  4. 在左侧的导航栏中单击DBA智能运维 > 实例列表页签,进入DBA智能运维实例列表页面。

    您也可以在产品概览页面,单击“进入DBA智能运维”,进入DBA智能运维实例列表页面。

  5. 在实例列表页面右上角,按照引擎、实例名称或者实例IP筛选实例。

    图1 筛选实例

  6. 选择目标实例,单击“详情”,进入新版DBA智能运维“实例概览”页面。
  7. 在页面右上角单击“返回旧版”,进入旧版DBA智能运维界面。

    图2 进入旧版DBA智能运维界面

  8. “SQL”页签下选择“SQL诊断”,您可以进行如下操作。

    • 选择目标数据库,输入需要诊断的SQL语句,单击“SQL诊断”,系统将自动弹出诊断结果页面。
      图3 SQL诊断
    • 选择目标数据库,输入SQL语句,单击“执行”,系统自动执行SQL语句,并在结果集中显示。
      图4 SQL执行结果集
    • 选择目标数据库,输入多行SQL语句,单击“格式化”,系统自动将所有SQL语句格式化后显示。
    • 选择目标数据库,输入多行SQL语句,单击“查看执行计划”,系统自动按顺序执行所有SQL语句。