vi /etc/my.cnf
[mysqld]
[mysqld]
long_query_time=2
slow_query_log=1
#slow_query_log_file=
slow_query_log=1
#slow_query_log_file=
#之前版本的参数格式跟5.6的不一致
slow_query_log_file=/usr/local/mysql/data/slow-query.log (一定要将日志存放在mysql用户有可写权限的地方)
slow_query_log_file=/usr/local/mysql/data/slow-query.log (一定要将日志存放在mysql用户有可写权限的地方)
#将所有没用索引的sql查询全写到慢查询日志中
log_queries_not_using_indexes=1
对 3306 端口的mysql:
[root@mysql_multi ~]# mysqld_multi start 3306
[root@mysql_multi ~]# netstat -nlp|grep mysql
tcp 0 0 :::3306 :::* LISTEN 18693/mysqld
unix 2 [ ACC ] STREAM LISTENING 69806 18693/mysqld /usr/local/mysql/data/mysql.sock
[root@mysql_multi ~]# netstat -nlp|grep mysql
tcp 0 0 :::3306 :::* LISTEN 18693/mysqld
unix 2 [ ACC ] STREAM LISTENING 69806 18693/mysqld /usr/local/mysql/data/mysql.sock
root@localhost : mysql 01:00:16> show variables like '%slow%';
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 2
Current database: mysql
+---------------------------+----------------------------------------------+
| Variable_name | Value |
+---------------------------+----------------------------------------------+
| log_slow_admin_statements | OFF |
| log_slow_slave_statements | OFF |
| slow_launch_time | 2 |
| slow_query_log | ON |
| slow_query_log_file | /usr/local/mysql/data/slow-query.log |
+---------------------------+----------------------------------------------+
5 rows in set (0.00 sec)
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect...
Connection id: 2
Current database: mysql
+---------------------------+----------------------------------------------+
| Variable_name | Value |
+---------------------------+----------------------------------------------+
| log_slow_admin_statements | OFF |
| log_slow_slave_statements | OFF |
| slow_launch_time | 2 |
| slow_query_log | ON |
| slow_query_log_file | /usr/local/mysql/data/slow-query.log |
+---------------------------+----------------------------------------------+
5 rows in set (0.00 sec)
root@localhost : mysql 01:03:44> show variables like '%index%';
+----------------------------------------+-------+
| Variable_name | Value |
+----------------------------------------+-------+
| eq_range_index_dive_limit | 10 |
| innodb_adaptive_hash_index | ON |
| innodb_cmp_per_index_enabled | OFF |
| log_bin_index | |
| log_queries_not_using_indexes | ON |
| log_throttle_queries_not_using_indexes | 0 |
| relay_log_index | |
+----------------------------------------+-------+
7 rows in set (0.00 sec)
+----------------------------------------+-------+
| Variable_name | Value |
+----------------------------------------+-------+
| eq_range_index_dive_limit | 10 |
| innodb_adaptive_hash_index | ON |
| innodb_cmp_per_index_enabled | OFF |
| log_bin_index | |
| log_queries_not_using_indexes | ON |
| log_throttle_queries_not_using_indexes | 0 |
| relay_log_index | |
+----------------------------------------+-------+
7 rows in set (0.00 sec)
然后运行一个需要长时间才能执行完毕的sql,使用mysqldumpslow 查看日志:
/usr/local/mysql/data/slow-query.log (直接使用cat 进行查看也可以)