mysql> set global slow_query_log=0; Query OK, 0 rows Affected (0.00 sec) mysql> set global slow_query_log_file= '/data/mysql_33096/mysqllog/slow_ Query_2014-06-09.log '; Query OK, 0 rows Affected (0.00 sec) mysql> Show variables like ' slow% '; +---------------------+----------------- -------------------------------------+| variable_name | Value |+---------------------+------------------------------------------------------+| Slow_launch_time | 2 | | Slow_query_log | OFF | | Slow_query_log_file | /data/mysql_33096/mysqllog/slow_query_2014-06-09.log |+---------------------+---------------------------------- --------------------+ mysql> set global slow_query_log=1; Query OK, 0 rows Affected (0.00 sec) mysql> Show variables like ' slow% '; +---------------------+----------------------- --------------------+| variable_name | Value |+---------------------+-------------------------------------------+| Slow_launch_time | 2 | | Slow_query_log | On | | Slow_query_log_file | /data/mysql_33096/mysqllog/slow_query.log |+---------------------+-------------------------------------------+3 rows in Set ( 0.00 sec) /root/slowlog.sh script #!/bin/bash### #split mysql slow-query-log###### #LOGDIR =/data/mysqllogdate= ' date + '%y-%m-%d ' user=xxxpasswd=**** #stop slow_query_logmysql-u$user-p$passwd-e "set global slow_query_log=0" #reset the filename of SLO W_QUERY_LOGMYSQL-U$USER-P$PASSWD-E "Set global slow_query_log_file= ' ${logdir}/slow_query_${date}.log '" #enable slow _QUERY_LOGMYSQL-U$USER-P$PASSWD-E "Set global slow_query_log=1" #remove slow_query_log 7days ago.cd $LOGDIRfind./slow_ query*-ctime +7-exec rm-f {} \; Timed tasks: [[email protected] home]$ sudo crontab-e00 0 * * */root/slowlog.sh
MySQL Slow query log segmentation