MySQL – 为什么SHOW SLAVE HOSTS会导致binlog转储?

我们正在MySQL 5.0.x中获取大量的binlog文件。 我们有一个正常的主/从复制事情与1主,1奴隶。 查看/var/log/mysql.log,复制器连接的时间将近90%,并执行SHOW SLAVE HOSTS会导致bin日志转储。

例如:

  7020 Query SHOW SLAVE HOSTS 7020 Binlog Dump Log: 'mysql-bin.029634' Pos: 13273 

但是,当我在mysql上做SHOW SLAVE HOSTS时,我没有任何结果。

偶尔,当复制器执行SHOW SLAVE HOSTS ,mysql将挂起几个小时。 我同时在/var/log/syslog中看不到任何内容…

这里发生了什么? 我怎样才能更多的debugging?

为了loggingMySQL的主从服务器是Ubuntu的精简版。

有些事情要检查:

  • 磁盘空间的binlogs。

  • 检查ifconfig是否存在networking错误。 我看到坏包迫使复制脱轨。

  • 检查SHOW SLAVE STATUS和/etc/my.cnf以确保MySQL服务器ID不会相同。 我已经看到了这种情况,复制可能会很糟糕。

  • mysql日志写入日志或表的麻烦。 如果它们被根源所拥有,那可能会造成麻烦。

  • 如果可以的话,使用lm-sensors监控你的服务器温度。 一个失败的风扇会提高系统温度,并提前降低内存,磁盘和RAID控制器的性能。 我见过raid控制器比hot系统上的磁盘更频繁地失败。

我也会安排服务器运行CHECK TABLE; REPAIR TABLE; OPTIMIZE TABLE停机时间CHECK TABLE; REPAIR TABLE; OPTIMIZE TABLE CHECK TABLE; REPAIR TABLE; OPTIMIZE TABLE CHECK TABLE; REPAIR TABLE; OPTIMIZE TABLE视情况而定。 我已经在MySQL日志中看到了一个沉默,在这个日志中,表被损坏,错误消息被忽略。

我看到坏记忆腐败表。 在计划停机期间,运行物理内存testing。 主板上的内存座位也可能变坏。

我怀疑你可能有一个networking变化,开始这个,它可能是一个恼人的DNS查找更改。 例如,你的/etc/resolv.conf现在可能是空白的,如果它不是IP地址,它可能无法parsing你的从地址。