MariaDB mysqlbinlog 出现read_log_event(): 'Found invalid event in binary log' 错误解决方法
作者:
dave
执行mysqlbinlog命令,报如下错误:
[root@www.cndba.cn/dave data]# mysqlbinlog --no-defaults /mysql/data/mysql-bin.000020
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#180208 12:34:21 server id 1 end_log_pos 256 Start: binlog v 4, server v 10.2.12-MariaDB-log created 180208 12:34:21 at startup
# Warning: this binlog is either in use or was not closed properly.
ROLLBACK/*!*/;
BINLOG '
TdN7Wg8BAAAA/AAAAAABAAABAAQAMTAuMi4xMi1NYXJpYURCLWxvZwAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAABN03taEzgNAAgAEgAEBAQEEgAA5AAEGggAAAAICAgCAAAACgoKAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAEEwQADQgICAoKCgEpDRVe
'/*!*/;
ERROR: Error in Log_event::read_log_event(): 'Found invalid event in binary log', data_len: 43, event_type: -93
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
[root@www.cndba.cn/dave data]# which mysqlbin
/usr/bin/which: no mysqlbin in (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin/:/root/bin)
Linux 系统默认情况下可能会安装mysql或者MaraiDB数据库:
[root@www.cndba.cn/dave data]# which mysqlbinlog
/usr/bin/mysqlbinlog
[root@www.cndba.cn/dave data]# cd /usr/local/mysql/bin/
[root@www.cndba.cn/dave bin]# ls
aria_chk mariadb_config mysql mysql_convert_table_format mysql_find_rows mysqlslap replace wsrep_sst_xtrabackup-v2
aria_dump_log mbstream mysqlaccess mysqld mysql_fix_extensions mysqltest resolveip
aria_ftdump msql2mysql mysqladmin mysqld_multi mysqlhotcopy mysqltest_embedded resolve_stack_dump
aria_pack myisamchk mysqlbinlog mysqld_safe mysqlimport mysql_tzinfo_to_sql wsrep_sst_common
aria_read_log myisam_ftdump mysqlcheck mysqld_safe_helper mysql_plugin mysql_upgrade wsrep_sst_mariabackup
garbd myisamlog mysql_client_test mysqldump mysql_secure_installation mysql_waitpid wsrep_sst_mysqldump
innochecksum myisampack mysql_client_test_embedded mysqldumpslow mysql_setpermission mytop wsrep_sst_rsync
mariabackup my_print_defaults mysql_config mysql_embedded mysqlshow perror wsrep_sst_xtrabackup
[root@www.cndba.cn/dave bin]# ./mysqlbinlog --no-defaults --version
./mysqlbinlog Ver 3.3 for Linux at x86_64
[root@www.cndba.cn/dave bin]# mysqlbinlog --no-defaults --version
mysqlbinlog Ver 3.3 for redhat-linux-gnu at x86_64
[root@www.cndba.cn/dave bin]#
这2个不通的命令版本有区别。 这里我们使用MairaDB 安装目录bin目录下的mysqlbinlog 命令就可以正常查看了:
[root@www.cndba.cn/dave bin]# ./mysqlbinlog --no-defaults /mysql/data/mysql-bin.000020
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#180208 12:34:21 server id 1 end_log_pos 256 CRC32 0x5e150d29 Start: binlog v 4, server v 10.2.12-MariaDB-log created 180208 12:34:21 at startup
# Warning: this binlog is either in use or was not closed properly.
ROLLBACK/*!*/;
BINLOG '
TdN7Wg8BAAAA/AAAAAABAAABAAQAMTAuMi4xMi1NYXJpYURCLWxvZwAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAABN03taEzgNAAgAEgAEBAQEEgAA5AAEGggAAAAICAgCAAAACgoKAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAEEwQADQgICAoKCgEpDRVe
'/*!*/;
# at 256
#180208 12:34:21 server id 1 end_log_pos 299 CRC32 0x422cbf22 Gtid list [0-1-74]
# at 299
#180208 12:34:21 server id 1 end_log_pos 342 CRC32 0xcd5f0223 Binlog checkpoint mysql-bin.000020
# at 342
#180208 13:09:03 server id 1 end_log_pos 384 CRC32 0x8d423d5f GTID 0-1-75 trans
/*!100101 SET @@session.skip_parallel_replication=0*//*!*/;
/*!100001 SET @@session.gtid_domain_id=0*//*!*/;
/*!100001 SET @@session.server_id=1*//*!*/;
/*!100001 SET @@session.gtid_seq_no=75*//*!*/;
BEGIN
/*!*/;
# at 384
#180208 13:09:03 server id 1 end_log_pos 487 CRC32 0x120e5948 Query thread_id=10 exec_time=0 error_code=0
use `cndba`/*!*/;
SET TIMESTAMP=1518066543/*!*/;
SET @@session.pseudo_thread_id=10/*!*/;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1, @@session.check_constraint_checks=1/*!*/;
SET @@session.sql_mode=1411383296/*!*/;
SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!/C utf8 *//*!*/;
SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=33/*!*/;
SET @@session.lc_time_names=0/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
insert into dave values(2,'oracle')
/*!*/;
# at 487
#180208 13:09:03 server id 1 end_log_pos 518 CRC32 0x50ff5147 Xid = 10
COMMIT/*!*/;
# at 518
#180208 13:09:10 server id 1 end_log_pos 560 CRC32 0x552ab324 GTID 0-1-76 trans
/*!100001 SET @@session.gtid_seq_no=76*//*!*/;
BEGIN
/*!*/;
# at 560
#180208 13:09:10 server id 1 end_log_pos 663 CRC32 0x38812230 Query thread_id=10 exec_time=0 error_code=0
SET TIMESTAMP=1518066550/*!*/;
insert into dave values(2,'oracle')
/*!*/;
# at 663
#180208 13:09:10 server id 1 end_log_pos 694 CRC32 0x4c4f9508 Xid = 12
COMMIT/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
[root@www.cndba.cn/dave bin]#
因为我们之前配置过环境变量,所以直接把默认路径下的mysqlbinlog 删除即可。或者做个link。
版权声明:本文为博主原创文章,未经博主允许不得转载。