mysql慢日志自动切换
场景:
low_query_log_file日志变得很大,对它进行分析变得很不方便,我们就想按天每天产生一个slow_query_log_file文件,每天分析这个日志文件。
如何按天切换呢?
方式一:手动切换
1)check slow log status
mysql> show variables like '%slow%';
+---------------------------+------------------------------------------------------+
| Variable_name | Value |
+---------------------------+------------------------------------------------------+
| log_slow_admin_statements | OFF |
| log_slow_extra | OFF |
| log_slow_slave_statements | OFF |
| slow_launch_time | 2 |
| slow_query_log | ON |
| slow_query_log_file | /data/mysql/zyt1/log/mysql_slow_query_2021-10-11.log |
+---------------------------+------------------------------------------------------+
6 rows in set (0.01 sec)
2)disable slow_query_log
mysql> set global slow_query_log=0;
3)set slow_query_log_file
mysql> set global slow_query_log_file='/data/mysql/zyt1/log/mysql_slow_query_2021-10-12.log';
4)enable slow_query_log
mysql> set global slow_query_log=1;
5)check
mysql> show variables like '%slow%';
方式二:
写个shell小脚本,定时更改日志名称,这样就可以按天生成日志。(确保慢日志是开启的,路径存在)
vi slow_log.sh
#!/bin/bash
time=`date -d yesterday +"%Y-%m-%d"`
user="root"
passwd="123456"
mysql -u$user -p$passwd -S /tmp/mysql_zyt1.sock -e "set global slow_query_log_file='/data/mysql/zyt1/log/mysql_slow_query.log.$time';"
参考链接:https://blog.csdn.net/eagle89/article/details/106237910

浙公网安备 33010602011771号