1、查看慢sql日志是否开启
show VARIABLES like '%slow_query_log%'
//slow_query_log ON(开启) OF(关闭)
2、查看慢sql日志文件目录
show VARIABLES like '%slow_query_log_file%'
//slow_query_log_file /var/log/mysql/mysql-slow.log
3、查看慢sql超时参数
show VARIABLES like '%long_query_time%'
//long_query_time 1.000000
4、临时开启慢sql日志开启(默认关闭),系统重启失效
set global slow_query_log = ON;
set global long_query_time = 1;
5、永久设置慢sql日志(默认关闭)
vim //etc/mysql/mysql.conf.d/mysqld.cnf
去掉#注释即可
#slow_query_log = ON
#slow_query_log_file = /var/log/mysql/slow.log
#long_query_time = 1
6、验证慢sql查询是否生效
systemctl restart mysql.service
登录mysql客户端
show VARIABLES like '%slow_query_log%'
7、tail -f /var/log/mysql/mysql-slow.log
Time Id Command Argument
# Time: 2020-09-14T01:51:49.249748Z //sql执行时间
# User@Host: root[root] @ [192.168.0.195] Id: 2 //执行sql连接信息/用户名/IP/线程ID号
# Query_time: 1.019989 Lock_time: 0.009611 Rows_sent: 104321 Rows_examined: 104321 //执行sql时间/等待表锁时间/查询记录行数/查询检查行数
use smartpatroldb; //数据库
SET timestamp=1600048309; //设置时间戳
select * from acc_user_location; //执行的sql语句记录信息