当前位置: 移动技术网 > IT编程>数据库>Mysql > Error in Log_event::read_log_event(): 'Event too small', data_len: 0, ev

Error in Log_event::read_log_event(): 'Event too small', data_len: 0, ev

2018年04月11日  | 移动技术网IT编程  | 我要评论

MySQL主从复制报错如下:

2018-04-11 09:11:16 2400 [Note] Slave SQL thread initialized, starting replication in log 'binlog.000042' at position 1934531, relay log '/mysql/data/relay_bin.000053' position: 1934691
2018-04-11 09:11:16 2400 [ERROR] Error in Log_event::read_log_event(): 'Event too small', data_len: 0, event_type: 0
2018-04-11 09:11:16 2400 [ERROR] Error reading relay log event: slave SQL thread aborted because of I/O error
2018-04-11 09:11:16 2400 [ERROR] Slave SQL: Relay log read failure: Could not parse relay log event entry. The possible reasons are: the master's binary log is corrupted (you can check this by running 'mysqlbinlog' on the binary log), the slave's relay log is corrupted (you can check this by running 'mysqlbinlog' on the relay log), a network problem, or a bug in the master's or slave's MySQL code. If you want to check the master's binary log or slave's relay log, you will be able to know their names by issuing 'SHOW SLAVE STATUS' on this slave. Error_code: 1594
2018-04-11 09:11:16 2400 [ERROR] Error running query, slave SQL thread aborted. Fix the problem, and restart the slave SQL thread with "SLAVE START". We stopped at log 'binlog.000042' position 1934531

三台虚拟机做的MHA主从复制,由于经常开关机导致会出现此类错误。如上所示:

We stopped at log 'binlog.000042' position 1934531

解决办法是直接在slave上执行如下命令:

stop slave;
reset slave all;
change master to master_host='192.168.20.70',master_user='rep',master_password='rep',master_log_file='binlog.000042',master_log_pos=1934531;
start slave;

就按报错所示的binlog和pos进行主从复制的重置,之后就可以正常运行。

出现此报错可能的原因:

如error日志中所显示的原因,可能是主库的binlog损坏或者从库的relaylog损坏,或者网络问题,导致主从复制异常中断,此时只要重新执行change master即可。但是极端情况下由主从各自实例恢复造成的不一致无法进行恢复,只能重做主从。

如对本文有疑问, 点击进行留言回复!!

相关文章:

  • MySQL InnoDB表空间加密示例详解

    前言从 mysql5.7.11开始,mysql对innodb支持存储在单独表空间中的表的数据加密 。此功能为物理表空间数据文件提供静态加密。该加密是在引擎内部数... [阅读全文]
  • 如何解决mysql无法关闭的问题

    如何解决mysql无法关闭的问题

    mysql关闭不了的解决办法:右键点击电脑的任务栏,打开任务管理器点击服务,找到mysql服务右键点击该服务,选择停止就可以了内容扩展:mac系统mysqld进... [阅读全文]
  • mysql不是内部命令的错误解决方案

    mysql不是内部命令的错误解决方案

    出现mysql不是内部命令的错误是因为没有把mysql的bin目录路径添加到环境变量中解决方法:打开电脑的环境变量,选择系统变量,打开path,将mysql的b... [阅读全文]
  • 关于MySQL主从复制的几种复制方式总结

    关于MySQL主从复制的几种复制方式总结

    异步复制mysql的复制默认是异步的,主从复制至少需要两个mysql服务,这些mysql服务可以分布在不同的服务器上,也可以在同一台服务器上。mysql主从异步... [阅读全文]
  • 详细分析MySQL主从复制

    详细分析MySQL主从复制

    前言:在mysql中,主从架构应该是最基础、最常用的一种架构了。后续的读写分离、多活高可用架构等大多都依赖于主从复制。主从复制也是我们学习mysql过程中必不可... [阅读全文]
  • MySQL单表恢复的步骤

    正休息的时候一个电话将我的睡意完全打散,“开发童鞋写update sql的时候忘了加where条件了”,相信每一个dba同学听到这个消息的时候都有骂街的冲动吧。... [阅读全文]
  • MySQL性能优化之如何高效正确的使用索引

    实践是检验真理的唯一途径,本篇只是站在索引使用的全局来定位的,你只需要通读全篇并结合具体的例子,或回忆以往使用过的地方,对整体有个全面认识,并理解索引是如何工作... [阅读全文]
  • MySQL如何优化查询速度

    前面章节我们介绍了如何选择优化的数据类型、如何高效的使用索引,这些对于高性能的mysql来说是必不可少的。 但这些还完全不够,还需要合理的设计查询。 如果查询写... [阅读全文]
  • MySQL优化SQL语句的技巧

    在面对不够优化、或者性能极差的sql语句时,我们通常的想法是将重构这个sql语句,让其查询的结果集和原来保持一样,并且希望sql性能得以提升。而在重构sql时,... [阅读全文]
  • 简述MySql四种事务隔离级别

    隔离级别:隔离性其实比想象的要复杂。 在sql标准中定义了四种隔离级别, 每一个事务中所做的修改,哪些在事务内和事务间是可见的,哪些是不可见的。较低级别的隔离通... [阅读全文]
验证码:
移动技术网