这个脚本的功能是统计/data/目录下 MySQL binlog 文件的数量、每个日期生成的总大小(MB),以及每小时的平均大小(MB)

统计 MySQL 每小时生成多少 binlog 文件_mysql


执行下面的命令:

find . -name "mysql-bin.*" -exec ls -lt --time-style=+%F {} \; | \
awk 'BEGIN {
    FS=" ";
    printf "%-12s %-8s %-15s %-10s\n", "Date", "Files", "Total (MB)", "PerHour (MB)";
    print "------------------------------------------------------------";
}
NR != 1 {
    a[$6]++;
    sum[$6] += $5;
}
END {
    for (i in a) {
        printf "%-12s %-8d %-15.2f %-10.2f\n", i, a[i], sum[i] / 1048576, sum[i] / 24 / 1048576;
    }
}'

最终输出按日期列出每一天生成的文件数量、总大小(MB)、平均每小时生成的大小(MB)。