MySQL Profiler 是用于分析 MySQL 服务器性能的工具,它可以帮助你找到慢查询、锁等待等性能瓶颈
-
打开 MySQL 配置文件(my.cnf 或 my.ini)。
-
在
[mysqld]
部分添加以下配置:
[mysqld] profiling = ON profiling_max_mem = 128M profiling_save_file = /tmp/mysql_profiler.log
这里,profiling
设置为 ON 以启用性能分析功能。profiling_max_mem
设置了性能分析过程中使用的最大内存,单位为兆字节。profiling_save_file
设置了性能分析结果的保存文件路径。
-
重启 MySQL 服务器以使配置生效。
-
在 MySQL 查询中使用
SHOW PROFILES;
命令查看性能分析结果。例如:
SHOW PROFILES;
这将显示所有已完成的性能分析任务及其资源使用情况。
- 若要查看特定查询的性能分析结果,可以使用
SHOW PROFILE FOR QUERY
命令。例如:;
SHOW PROFILE FOR QUERY 1;
这将显示 ID 为 1 的查询的性能分析结果。
- 若要设置特定查询的阈值,可以在查询中使用
SET profiling_level
命令。例如,要将阈值设置为 1(仅记录耗时超过 1 秒的查询),可以执行以下命令:
SET profiling_level = 1;
然后执行你的查询,性能分析结果将只包含耗时超过 1 秒的查询。
注意:这些设置仅适用于当前会话。要永久更改阈值,请在 MySQL 配置文件中修改相应的配置项并重启服务器。