开发者社区> 问答> 正文

源库的mysql的binlog dump线程老是关闭

Otter版本:4.2.13 mysql版本:5.6 最近otter 的一个通道老是出现数据延迟同步,异常老是抛异常 tu1.png

然后在源库里执行show processlist 发现没有对应的binlog dump线程

然后重启该通道 ,在执行show processlist 该命令 发现有binlog dump线程,但是过一会儿该线程就消失了 紧接着就抛上面异常,各位大神有没有遇到这个问题呀 但是每次重连上mysql就收到mysql那边发送一个RST标志的报,然后就抛上述异常,想问一下什么情况会导致mysql那边把我们这边的链接断掉 tu2.png

后来我们通过抓包分析 ,在Mysql发R包之前对某一个包重试发了三次但是没有收到我们这边的ack才发R包的,然后我们这边收到R包则会抛connection reset by peer异常,然后otter这边捕获到这个异常把上次的连接关闭了,然后在重连在发dump请求,然而同步一会儿又收到R包这样一个循环过程

原提问者GitHub用户 jwcjlu

展开
收起
古拉古拉 2023-06-18 10:25:02 104 0
2 条回答
写回答
取消 提交回答
  • 随心分享,欢迎友善交流讨论:)

    根据您描述的情况,可能存在以下一些原因导致 binlog dump 线程老是关闭:

    MySQL 数据库或者网络存在异常。如果 MySQL 数据库或者网络存在问题,可能会导致 binlog dump 线程无法正常工作。例如 MySQL 数据库连接超时、网络不稳定、网络噪声等。

    Otter 配置或者网络存在异常。如果 Otter 的配置有误或者网络存在问题,可能会导致 binlog dump 线程无法正常工作。例如 Otter 的配置信息不正确、网络带宽不足、网络连接不稳定等。

    其他未知原因。如果以上原因都排除了,可能存在其他未知的原因导致 binlog dump 线程无法正常工作。例如 MySQL 的版本不支持 binlog dump、Otter 的版本存在 bug 等。

    为了解决这个问题,您可以尝试以下几个方法:

    检查 MySQL 数据库的运行状态。您可以通过 show processlist 命令查看 MySQL 数据库的运行状态,以确定是否存在异常或者错误。如果 MySQL 数据库存在问题,可以尝试修复或者调整相关的配置信息。

    检查 Otter 的配置信息。您可以检查 Otter 的配置信息,例如节点配置、通道配置、数据源配置等,以确定是否存在错误或者不一致。如果 Otter 的配置信息有误,可以尝试修复或者调整相关的配置信息。

    检查网络状况。您可以检查 MySQL 数据库和 Otter 之间的网络连接和带宽状况,以确定是否存在网络问题。如果存在网络问题,可以尝试优化网络配置或者增加带宽容量等。

    尝试升级或者降级相关的软件版本。如果以上方法都无法解决问题,可以尝试升级或者降级相关的软件版本,例如将 MySQL 数据库升级或者降级到其他版本,或者将 Otter 升级或者降级到其他版本等。

    需要注意的是,binlog dump 线程关闭的问题可能涉及到多个方面的原因,因此需要综合考虑多个因素来进行排查和解决。如果您无法解决这个问题,可以咨询 Otter 的技术支持或者社区,以获得更好的帮助和支持。

    2023-06-30 17:36:20
    赞同 展开评论 打赏
  • 试试使用4.2.16?怀疑是slaveId冲突,新版本对slaveId(server_uuid)做了自动生成. slaveId相同之后,mysql server会随机踢掉一个

    原回答者GitHub用户 agapple

    2023-06-18 11:04:10
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
冬季实战营第三期:MySQL数据库进阶实战 立即下载
MySQL 技术大全:开发、优化与运维实战 立即下载
多IO线程优化版 立即下载

相关镜像