mysql在binlog自动切换时阻塞访问

MySQL · passerliu · 于 8个月前发布 · 626 次阅读

现象:
binlog文件达到最大值时,切换log文件导致数据库访问突然变慢,那一段时间(500ms左右)内的请求执行40-80秒不等,错过那个时间段的请求不受影响 并发线程数:100-200 不等, 故障时,与并发数关系不大。 参数: Mysql 版本:5.7.12 服务器:8 核,32 GB sync_binlog = 0 innodb_flush_trx_commit = 0 innodb_pool_size = 24GB max_binlog_size = 1GB

请问应该查看或者调整什么参数? 服务器是云主机,固态硬盘。


共收到 4 条回复
passerliu#18个月前 0 个赞

flush logs产生新的log文件,不会发生这个问题。只有自动切换log文件会发生。

passerliu#28个月前 0 个赞

怀疑是binlog设置过大导致,改成64、128、512M试试,倒是不是每次都出,但一天中还是会出现一次,可还是不行。 binlog切换时,是什么导致数据库做了一个重IO呢?

suifu#38个月前 1 个赞

这个还真没遇到过,坐等楼主改小参数反馈

weity#423天前 0 个赞

我好像遇到了很相似的问题,每次binlog切换,java程序就报getConnection失败。同样的阿里云的机器,楼主解决了这个问题吗?

回复本帖 (需要登录)