导读
日常运维中, 难免遇到要分析BINLOG的时候, 通常我们只看下哪个时间点比较集中, 然后使用mysqlbinlog去解析. 但这还是比较粗糙. 不是那么的方便, 之前也写过解析binlog的工具的. 但都是零零星星的. 这次来一个汇总的.
分析BINLOG
首先下载 pymysqlbinlog
wget https://github.com/ddcw/pymysqlbinlog/archive/refs/heads/main.zip unzip main.zip cd pymysqlbinlog-main
然后使用脚本分析某N个BINGLOG
python3 main.py /data/mysql_3314/mysqllog/binlog/m3314.00004* --analyze

我们就可以得到 TOP20的大事务, 还有各个表的执行情况. 直接看可能不太好看, 我们可以放到excel里面画图

于是我们发现db1.sbtest1表占比最大, 然后就可以进一步分析了.
还支持输出md格式的文件.
python3 main.py /data/mysql_3314/mysqllog/binlog/m3314.00004* --analyze -o /tmp/t20240505.md


跟昨天的差不多, 只是美化了一下.
其它
由于目标环境可能很复杂, 可能存在多个server_id, 多个gtid之类的情况, 还想排除某些库表, 然后做统计, 这时候这个工具的数据过滤功能就体现出来了. 我这里就不演示了. 感兴趣的自己去试试. 其它功能也自己去试.
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




