MySQL统计分析binlog的数量与大小
2025-10-29 15:38 潇湘隐者 阅读(10) 评论(0) 收藏 举报脚本介绍
脚本mysql_binlog_gen_sum的功能与用途如下所示:
- 按天统计MySQL的binlog的生成数量(个数)与大小(Size)信息.用于数据分析.
- 按小时统计MySQL的binlog的生成数量(个数)与大小(Size)信息.用于数据分析.
写这个脚本的初衷是想实现类似Oracle数据库中统计分析归档日志生成的大小与数量的功能,奈何MySQL数据库中没有这些系统视图和系统表.无法用SQL实现,所以写了这个小脚本实现这个功能.
版本说明
#***************************************************************************************#
# Version Modified Date Description #
#***************************************************************************************#
# V.1.0 2024-05-10 创建此脚本 #
# V.1.1 2025-10-11 完善脚本,改进部分功能 #
# V.1.2 2025-10-22 Fix掉统计输出部分数据没有按天排序的问题 #
#########################################################################################
参数说明
| 参数 | 长参数 | 是否强制参数 | 参数说明 |
|---|---|---|---|
| -p | --path | yes | MySQL binlog的路径. |
| -b | --base_name | yes | MySQL binlog的basename |
| -t | --type | no | 按天/小时/All统计输出,默认按天统计 |
| -u | --unit | no | MySQL binlog的大小按GB或MB或KB方式输出,默认按MB输出 |
| -v | --version | no | 查看脚本版本信息 |
| -h | --help | no | 查看脚本帮助信息 |
脚本使用
脚本授权
脚本授权
chmod +x mysql_binlog_gen_sum
脚本示例
例子如下所示:
- 查看帮助信息
$ ./mysql_binlog_gen_sum --help
Usage: mysql_binlog_gen_sum -p PATH_NAME -b BASE_NAME [-t OUT_TYPE] [-u UNIT_TYPE] [-v] [-h]
-p = Mandatory parameters. The path of the mysql binlog
-b = Mandatory parameters. The basename of binlog
-t = Optional parameter. the report out by day|hour|all
-u = Optional parameter. the binlog size output unit(GB|MB|KB)
-h = Optional parameter.help mode.
-v = Optional parameter.shell version. Display the version information of the current script.
- 按天统计MySQL的binlog的生成个数与大小信息.用于数据分析.
# ./mysql_binlog_gen_sum -p /data/mysql/logs -b mysql-bin
-----------------------------------------------------------------------------
下面数据是按天统计MySQL的binlog产生的数量,大小,以及每小时平均产生binlog的大小
-----------------------------------------------------------------------------
Date Files Total (MB) PerHour (MB)
------------------------------------------------------------
2025-10-22 15 4658.74 194.11
2025-10-23 29 8701.05 362.54
2025-10-24 28 8401.67 350.07
2025-10-25 28 8401.66 350.07
2025-10-26 28 8401.75 350.07
2025-10-27 27 8101.22 337.55
2025-10-28 28 8401.90 350.08
2025-10-29 18 5328.11 222.00
- 按天统计MySQL的binlog的生成个数与大小信息(文件大小按GB统计).用于数据分析.
# ./mysql_binlog_gen_sum -p /data/mysql/logs -b mysql-bin -u GB
-----------------------------------------------------------------------------
下面数据是按天统计MySQL的binlog产生的数量,大小,以及每小时平均产生binlog的大小
-----------------------------------------------------------------------------
Date Files Total (GB) PerHour (GB)
------------------------------------------------------------
2025-10-22 15 4.55 0.19
2025-10-23 29 8.50 0.35
2025-10-24 28 8.20 0.34
2025-10-25 28 8.20 0.34
2025-10-26 28 8.20 0.34
2025-10-27 27 7.91 0.33
2025-10-28 28 8.20 0.34
2025-10-29 18 5.21 0.22
扫描上面二维码关注我
如果你真心觉得文章写得不错,而且对你有所帮助,那就不妨帮忙“推荐"一下,您的“推荐”和”打赏“将是我最大的写作动力!
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接.
浙公网安备 33010602011771号