现在的位置: 首页 > 数据库 > 正文

mysql 数据同步Relay log read failure: Could not parse relay

2020年05月02日 数据库 ⁄ 共 4382字 ⁄ 字号 评论关闭

错误 信息:
> show slave status\G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: IP
Master_User: repl
Master_Port: 3306
Connect_Retry: 30
Master_Log_File: mysql-bin.x
Read_Master_Log_Pos: pos_x
Relay_Log_File: relay-bin.y
Relay_Log_Pos: pos_y
Relay_Master_Log_File: mysql-bin.z
Slave_IO_Running: Yes
Slave_SQL_Running: No
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 1594
Last_Error: 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.
Skip_Counter: 0
Exec_Master_Log_Pos: pos_z
Relay_Log_Space: 4132423412
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: NULL
Master_SSL_Verify_Server_Cert: No
Last_IO_Errno: 0
Last_IO_Error:
Last_SQL_Errno: 1594
Last_SQL_Error: 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.
1 row in set (0.00 sec)
 
 
看了网上的一些解决方案
 
没试不知道可行不可行。
 
仔细看了一下slave服务器 只发现内存用超了。
 
看了mysql 日志
110714  6:55:28 [ERROR] Error reading packet from server: Lost connection to MySQL server during query ( server_errno=2013)
110714  6:55:28 [Note] Slave I/O thread: Failed reading log event, reconnecting to retry, log 'mysql-bin.000046' at postion 297414128
110714 13:33:31 [ERROR] MYSQL_slave: Out of memory (Needed 808236 bytes)
110714 13:33:31 [ERROR] Out of memory; check if mysqld or some other process uses all available memory; if not, you may have to use 'ulimit' to allow mysqld to use more memory or you can add more swap space
110714 13:33:41 [ERROR] MYSQL_slave: Out of memory (Needed 808236 bytes)
110714 13:33:41 [ERROR] Out of memory; check if mysqld or some other process uses all available memory; if not, you may have to use 'ulimit' to allow mysqld to use more memory or you can add more swap space
110714 13:33:51 [ERROR] MYSQL_slave: Out of memory (Needed 808236 bytes)
110714 13:33:51 [ERROR] Out of memory; check if mysqld or some other process uses all available memory; if not, you may have to use 'ulimit' to allow mysqld to use more memory or you can add more swap space
110714 13:34:01 [ERROR] MYSQL_slave: Out of memory (Needed 808236 bytes)
110714 13:34:01 [ERROR] Out of memory; check if mysqld or some other process uses all available memory; if not, you may have to use 'ulimit' to allow mysqld to use more memory or you can add more swap space
110714 13:34:01 [ERROR] MYSQL_slave: Out of memory (Needed 808236 bytes)
110714 13:34:01 [ERROR] Out of memory; check if mysqld or some other process uses all available memory; if not, you may have to use 'ulimit' to allow mysqld to use more memory or you can add more swap space
110714 14:25:16 [ERROR] MYSQL_slave: Out of memory (Needed 26819862 bytes)
110714 14:25:16 [ERROR] Error in Log_event::read_log_event(): 'Found invalid event in binary log', data_len: 26819824, event_type: 2
110714 14:25:16 [ERROR] Error reading relay log event: slave SQL thread aborted because of I/O error
110714 14:25:16 [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
110714 14:25:16 [ERROR] Slave (additional info): Out of memory (Needed 26819862 bytes) Error_code: 5
110714 14:25:16 [Warning] Slave: Out of memory (Needed 26819862 bytes) Error_code: 5
110714 14:25:16 [ERROR] Error running query, slave SQL thread aborted. Fix the problem, and restart the slave SQL thread with "SLAVE START". We stopped at log 'mysql-bin.000046' position 517103753


好像是说内存不够 于是停了几个服务 然后 stop slave; slave start; 问题解决

抱歉!评论已关闭.