ITPub博客

首页 > 数据库 > MySQL > 执行mysqlbinlog出现Found invalid event in binary log错

执行mysqlbinlog出现Found invalid event in binary log错

原创 MySQL 作者:svoid 时间:2015-04-19 11:09:16 0 删除 编辑

MySQL在同一个服务器上可以安装N个不同的版本,方便测试,迁移等等。此外,对于大多数Linux系统,集成了mysql,缺省会被安装。因此多版本的问题导致一些莫名的错误也是时有发生。今天在提取binlog日志时,碰到了一个Log_event::read_log_event(): ‘Found invalid event in binary log’。上网搜索发现是由于mysqlbinlog的版本和在用的mysql版本不一致造成的,需要指定路径执行

故障描述

mysqlbinlog --start-datetime='2015-04-14 09:00:00' --stop-datetime='2015-04-14 16:00:00' mysql-bin.000170 > userop.log
ERROR: Error in Log_event::read_log_event(): 'Found invalid event in binary log', data_len: 127, event_type: 19

故障分析与解决

# 查看当前os使用的mysqlbinlog
shell> which mysqlbinlog
/usr/bin/mysqlbinlog

# 查看mysql当前使用的mysqlbinlog
mysql> show variables like 'basedir';
+---------------+------------------+
| Variable_name | Value            |
+---------------+------------------+
| basedir       | /usr/local/mysql | 
+---------------+------------------+
1 row in set (0.00 sec)

# 对比两个版本
shell> /usr/bin/mysqlbinlog --version
/usr/bin/mysqlbinlog Ver 3.2 for redhat-linux-gnu at x86_64

shell> /usr/local/mysql/bin/mysqlbinlog --version
/usr/local/mysql/bin/mysqlbinlog Ver 3.3 for linux2.6 at x86_64

# 指定mysqlbinlog路径
shell> /usr/local/mysql/bin/mysqlbinlog --start-datetime='2015-04-14 09:00:00' --stop-datetime='2015-04-14 16:00:00' mysql-bin.000170 > userop.log

总结

  • 对于生产环境mysql的部署,建议在安装OS前不安装缺省的mysql或者安装后卸载缺省的mysql
  • 因需要存在多版本的情形,应考虑使用直接路径方式来执行相应的mysql命令行工具

参考:
http://www.linuxidc.com/Linux/2014-12/110654.htm
http://blog.chinaunix.net/uid-20639775-id-324130.html

整理自网络

Svoid
2015-04-15

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29733787/viewspace-1585545/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: Nginx配置支持php
请登录后发表评论 登录
全部评论

注册时间:2014-07-02

  • 博文量
    60
  • 访问量
    463185