mysql慢日志分割

10次阅读

共计 377 个字符,预计需要花费 1 分钟才能阅读完成。

mysql 日志分割大致有三种方案

  1. 定时把日志重命名为历史文件,然后通过 mysqladmin 执行 flush-logs 将日志文件描述符定位到新的文件;
  2. 通过命令定时的更换日志文件的路径 set global slow_query_log_file=;
  3. 使用 logrotate.

两种都要通过 mysql 的账号密码去登录 mysql, 第二种不用 mv 文件, 所以我认为第二种方式更优雅一些.
以下是我通过第二种方式进行日志分割的脚本:

#!/bin/bash

time=`date "+%Y-%m-%d"`
host="127.0.0.1"
user="root"
passwd="******"
mysql -h$host -u$user -p$passwd -e "set global slow_query_log_file='/data/mysql_data/logs/slow-$time.log';"
正文完
 0