美文网首页
MHA主库宕机position号与从库不一致

MHA主库宕机position号与从库不一致

作者: later02 | 来源:发表于2020-04-19 07:49 被阅读0次

     Concat binary/relay logs from mysql-bin.000002 pos 976 to mysql-bin.000002 EOF into /var/tmp/saved_binlog_binlog1_20200418223125.binlog ..

    ERROR: Error in Log_event::read_log_event(): 'read error', data_len: 770, event_type: 0

     Concat succeeded.

    查看主库?确实是976结尾的

     976 | GRANT ALL PRIVILEGES ON *.* TO 'mha'@'%' IDENTIFIED WITH 'mysql_native_password' AS '*F4C9AC49A736981AE2739FC2F4A1FD92B4F07929'    |

    | mysql-bin.000002 | 976 | Stop          |        7 |        999 |                                                                                                                                    |

    ----从库的position与主库不一致?

    核查发现  从库和主库确实不一致,但是这个是不是上面错误的原因,我觉得不是,具体等我测试了在说。 

    主库和从库position号不一致的原因是:主库修改了密码:从库也修改了密码,分别记录到了binlog,从库binlog多记录了一次,因为复制了主库改密码的binlog.

    从新搭建主从, 主从都未修改密码,让主从position号保持一致,然后模拟主库宕机,进行 主从切换,发现日志并没有出现刚才的错误,故该问题得到解决。

    正常日志 报错日志

    反思:这里我认为MHA的设计应该根据GTID号来比对比较正确,position号会存在误差。

    问题?从库直接拿现在的master里面的已接受的position点以后的从主库拿到从库就好了,难道是发生了冲突,因为从库的position大于主库?

         1)反思,还是使用GTID就好了。

           2)MHA日志补偿的原理?这部分后面有相关资料在研究,或者再看一次视频?

    相关文章

      网友评论

          本文标题:MHA主库宕机position号与从库不一致

          本文链接:https://www.haomeiwen.com/subject/yjazvhtx.html