慢查询日志能够帮助DBA或开发人员定位可能存在问题的SQL语句,从而进行优化。mysql
默认状况下,MySQL是不开启慢查询日志的。能够经过如下命令查看是否开启:sql
mysql> SHOW VARIABLES LIKE 'long_query_time'; +-----------------+-----------+ | Variable_name | Value | +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+ 1 row in set (0.01 sec) mysql> SHOW VARIABLES LIKE 'slow_query_log'; +----------------+-------+ | Variable_name | Value | +----------------+-------+ | slow_query_log | OFF | +----------------+-------+ 1 row in set (0.00 sec)
long_query_time
查询超过多少秒才记录。slow_query_log
慢查询开启状态。经过如下命令能够在客户端临时开启慢查询日志:优化
mysql> set global slow_query_log='ON'; Query OK, 0 rows affected (0.00 sec) mysql> set global slow_query_log_file='/var/lib/mysql/instance-1-slow.log'; Query OK, 0 rows affected (0.00 sec) mysql> set global long_query_time=2; Query OK, 0 rows affected (0.00 sec)
也能够在服务端配置 mysql ,经过修改配置文件的这几个参数来开启:日志
/etc/my.cnf [mysqld] slow_query_log = ON slow_query_log_file = /var/lib/mysql/instance-1-slow.log long_query_time = 2
配置后,重启 mysql 服务便可。code