数据库自治服务DAS提供SQL优化功能,自动输出诊断结果、优化建议和预期优化收益,您可以根据诊断结果确认是否采纳建议。本文介绍如何使用SQL优化功能。

前提条件

  • 当前支持如下数据库引擎:
    • RDS MySQL
    • 自建MySQL
    • MongoDB
    • RDS PostgreSQL
    • PolarDB MySQL
  • 目标实例已经接入DAS,详情请参见实例接入简介
  • 目标实例的接入状态为连接正常

在慢日志分析页面进行SQL优化

  1. 登录DAS控制台
  2. 在左侧导航栏中,单击实例监控
  3. 找到目标实例,单击实例ID,进入目标实例详情页。
  4. 在左侧导航栏中,单击请求分析 > 慢日志 > 慢日志分析
  5. 慢日志分析页面:
    • 慢日志统计页签,单击目标SQL模板右侧操作列的优化
    • 慢日志明细页签,单击目标SQL右侧操作列的优化
  6. 在弹出的SQL诊断优化对话框中,查看SQL诊断结果。

    若您采纳诊断建议,单击页面右上角的复制,并将优化后的SQL粘贴到数据库客户端或DMS上执行,若不采纳诊断建议,可直接单击确认结束诊断。

    说明 DAS会根据SQL的复杂程度、对应表的数据量、数据库负载等进行SQL诊断,诊断建议的返回时间可能会超过20秒。完成诊断后,SQL诊断引擎会给出诊断结果、优化建议和预期优化收益,您可以根据诊断结果确认是否采纳建议。
    SQL诊断优化

在实例会话页面进行SQL优化

说明 当前MongoDB和RDS PostgreSQL数据库实例不支持在实例会话页面进行SQL优化。
  1. 登录DAS控制台
  2. 在左侧导航栏中,单击实例监控
  3. 找到目标实例,单击实例ID,进入目标实例详情页。
  4. 在左侧导航栏中,单击实例会话
  5. 实例会话区域,选中需要进行SQL优化的会话,单击优化
  6. 在弹出的SQL诊断优化对话框中,查看SQL诊断结果。

    若您采纳诊断建议,单击页面右上角的复制,并将优化后的SQL粘贴到数据库客户端或DMS上执行,若不采纳诊断建议,可直接单击确认结束诊断。

    说明 DAS会根据SQL的复杂程度、对应表的数据量、数据库负载等进行SQL诊断,诊断建议的返回时间可能会超过20秒。完成诊断后,SQL诊断引擎会给出诊断结果、优化建议和预期优化收益,您可以根据诊断结果确认是否采纳建议。
    SQL诊断优化

查看SQL诊断历史

  1. 登录DAS控制台
  2. 在左侧导航栏中,单击实例监控
  3. 找到目标实例,单击实例ID,进入目标实例详情页。
  4. 在左侧导航栏中,单击请求诊断历史。查看当前实例的SQL诊断历史(如SQL内容、诊断状态、诊断时间、诊断结果等)。