Updated on 2024-08-29 GMT+08:00

SQL Explorer

After Collect All SQL Statements is enabled, you can gain a comprehensive insight into SQL statements on the SQL Explorer page. Top SQL helps you locate exceptions.

SQL Explorer can record all SQL statements executed on your instance and enables you to analyze and search for the tables that are accessed and updated the most frequently and the SQL statements that have the longest lock wait.

Precautions

  • After Enable DAS SQL Explorer is toggled off, new SQL statements will not be collected anymore and the collected SQL data will be deleted.
  • SQL Explorer cannot record all data. As for RDS for MySQL, it has the following constraints:
    • Some data cannot be recorded if a buffer overrun occurs.
    • Any SQL statement that exceeds 4096 bytes is discarded by default.

      This constraint can be specified by setting parameter rds_sql_tracer_reserve_big_records in RDS for MySQL kernel versions 5.7.33.3 or later. RDS for MySQL 5.6 and 8.0 do not support this parameter. For example, you can set the parameter to ON on the parameter settings page, indicating that SQL statements whose length exceeds 4,096 bytes are still recorded.

  • Logs of all SQL statements executed on free instances can be retained for only one hour while those for paid instances can be retained for seven days by default and for up to 30 days as a maximum. After the retention period expires, the logs are deleted automatically.

Execution Duration Distribution of Top SQL Templates

  1. Log in to the DAS console.
  2. Click in the upper left corner and select a region and project.
  3. Click in the upper left corner, and under Databases, click Data Admin Service.
  4. In the navigation pane, choose Intelligent O&M > Instance List.

    Alternatively, on the Overview page, click Go to Intelligent O&M.

  5. In the upper right corner of the Instance List page, search for instances by engine type, instance name, or instance IP.

    Figure 1 Searching for instances

  6. Locate the box containing your target instance and click Details.
  7. In the upper right corner of the page, click Go to Old Edition.
  8. Choose SQL > SQL Explorer.
  9. Toggle on Collect All SQL Statements to obtain information about all SQL statements executed on the current instance.

    Collect All SQL Statements takes effect once it is enabled.

  10. On the Top SQL tab page, view execution duration of top SQL statements.

    You can select Last hour, Last 3 hours, or Last 6 hours to view execution durations of top SQL statements. You can also set a time range that spans no more than one day.

    The Execution Duration Distribution graph shows how many times SQL statements with different elapsed time lengths are executed over a specified time range. DAS collects SQL statistics of four elapsed time lengths.

    • < 100 ms: number of SQL statement executions whose elapsed time is less than 100 ms
    • 100 ms–500 ms: number of SQL statement executions whose elapsed time ranges from 100 ms to 500 ms
    • 500 ms–1s: number of SQL statement executions whose elapsed time ranges from 500 ms to 1s
    • > 1s: number of SQL statement executions whose elapsed time is longer than 1s

    SQL statistics in the four elapsed time lengths are collected over the time range you specified.

    • If you select Last hour, SQL statement executions are calculated every 10 seconds.
    • If you select Last 6 hours, SQL statement executions are calculated every minute.
    • If you select a time range longer than 6 hours, SQL statement executions are calculated every 5 minutes.

    Select By instance or By node to view execution duration distribution. You can change node to view its execution duration distribution. The primary node is selected by default. If you want to view the execution duration distribution of other nodes, click Change Node.

  11. In the SQL template list, view execution duration details, such as average execution duration, total duration, average lock wait duration, and average scanned rows.

    • Hover your mouse at any point in time on the graph to view top SQL statements at that time.
    • Specify a time range using your mouse on the graph, and you will see top SQL statements during that time range.
    • Click Export to export details about all top SQL templates in the list. This function is available only to paid instances.
    • In the SQL template list, locate a SQL template and click Details to view the total execution times, average rows scanned, average execution duration, and more.
    • In the SQL template list, locate a SQL template and click Diagnose to view details such as the execution plan, and suggestions for tuning indexes and SQL statements.

SQL Audit

  1. Log in to the DAS console.
  2. Click in the upper left corner and select a region and project.
  3. Click in the upper left corner, and under Databases, click Data Admin Service.
  4. In the navigation pane, choose Intelligent O&M > Instance List.

    Alternatively, on the Overview page, click Go to Intelligent O&M.

  5. In the upper right corner of the Instance List page, search for instances by engine type, instance name, or instance IP.

    Figure 2 Searching for instances

  6. Locate the instance whose audit tasks you want to view and click Details.
  7. Choose SQL > SQL Explorer.
  8. Click the SQL Audit tab.
  9. On the SQL Audit tab page, view SQL audit tasks.

    • Specify the start time, end time, task creation time, and node information to search for SQL audit tasks.
    • Click Add SQL Audit Task and specify a time range to add a task. You can add an instance- or node-level task based on your service requirements. The added SQL audit task is displayed in the list below.
    • Click View Details in the Operation column to view task details. You can specify filters such as Time Range, User, Keyword, or Database and click Query to search for the SQL statements executed on the current instance. The selected time range must be after the time when the SQL audit task is added.