查看binlog大小限制

mysql> SHOW VARIABLES LIKE '%binlog_size%';
+-----------------+------------+
| Variable_name   | Value      |
+-----------------+------------+
| max_binlog_size | 1073741824 |
+-----------------+------------+
1 row in set (0.01 sec)

单位为字节,大小为1G。需要注意的是,这里是个软限制,并不是硬限制。

binlog并不会把某个事务操作记录到多个binlog文件中,这就可能会导致某些时候文件大小的越位。一般几十k或者几M。

最近朋友说他的binlog越位非常严重,限制为1G,最大到了6G以上。

binlog大小限制并不完全准确_mysql  max_binlog_si

感觉奇怪,怎么可能有这么大的越位,刚开始以为是碰到了bug,后来问他最近是不是做了什么特殊操作。

原来这哥们昨天在测试pt工具包的主从延时工具,使用了存储过程批量往数据库中写入数据,而且使用的语句非常吓人

binlog大小限制并不完全准确_mysql  max_binlog_si_02

这条语句的增长速度是几何级别的。所以解释了上面的文件大小越位之后,下一个差不多是上一个的2倍大小!