show variables like ‘%slow_query_log%’
set global slow_query_log = 1
设置成1代表开启慢查询,此设置重启后失效,如果想永远生效,修改my.conf
show variables like ‘%long_query_time%’, 慢查询的的时间阈值,
set long_query_time = 4; 将慢查询设置成4s, 执行后,需要重新建立连接才可以看到变化
show variables like '%log_output%’, 日志输出格式,默认为file, 即日志。
值table可以将其存进数据库的mysql.slow_log表中。
也可以mysql.slow_log_output=‘file, table’两个同时生效。
记录到日志表中,要比文件系统消耗更多的资源,如果对性能要求高,建议存储到文件系统
show variables like ‘log_queries_not_using_indexes’, 不查询索引的也记录
show variables like'log_slow_admin_statements’; 管理语句如果是慢查询,也记录日志
分析工具 mysqldumpslow
在实际生产环境中,如果要手工分析日志,太累,需要一个工具.
sudo ./mysqldumpslow /usr/local/mysql/slow.log
Reading mysql slow query log from /usr/local/mysql/slow.log
Count: 3 Time=2.93s (8s) Lock=0.00s (0s) Rows=1.0 (3), root[root]@localhost
select * from user where name = 'S'
具体命令使用方式,请参考man。
----------
本人碎片记录,以便随时查阅。有帮助,极好;觉得乱,左上角。