检查读写性能

Performance Schema中的 statement 类型的插桩对于理解工作负载是受读还是受写限制非常有用。

统计各类型语句的执行量

SELECT
    event_name,
    COUNT(event_name) cnt
FROM events_statements_history_long
WHERE event_name LIKE 'statement/sql/%'
GROUP BY event_name
ORDER BY cnt DESC;

统计语句的延迟情况

SELECT
    event_name,
    COUNT(event_name)        cnt,
    SUM(lock_time / 1000000) latency_ms
FROM events_statements_history_long
WHERE event_name LIKE 'statement/sql/%'
GROUP BY event_name
ORDER BY latency_ms DESC;

统计读取和写入的字节数与行数

如果还想知道读取和写入的字节数和行数,可以使用全局状态变量 Handler_*

SELECT *
FROM (
         SELECT
             SUM(variable_value)
         FROM global_status
         WHERE variable_name LIKE 'Handler_read_%'
     ) AS rows_read,
     (
         SELECT
             SUM(variable_value)
         FROM global_status
         WHERE variable_name = 'Handler_write_%'
     ) AS rows_written;

最后更新于