萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> 解決Mysql主從同步的Last_IO_Errno:1236錯誤問題

解決Mysql主從同步的Last_IO_Errno:1236錯誤問題

Mysql主從同步的Last_IO_Errno:1236錯誤是什麼原因呢,我們要如何來解決這個問題呢?下面和小編一起來看看關於此問題的記錄與解決辦法。

從服務器錯誤代碼:

Last_IO_Errno: 1236
Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Slave can not handle replication events with the checksum that master is configured to log; the first event 'mysql-bin.000005' at 16750821, the last event read from '/usr/local/mysql/Binlog/mysql-bin.000005' at 16750821, the last byte read from '/usr/local/mysql/Binlog/mysql-bin.000005' at 120.'

大概分析了一下原因,個人認為很可能的因素的由於①mysql版本不同導致;②備份不完全導致的。之前配置版本相同的mysql是不存在這個問題的。(時間問題,沒有具體測試原因)

主服務器由於上次php導致的宕機,升級到了最新版本的mysql(5.6.29),而從服務器我剛剛編譯的時候使用的5.5.49這個版本的db,因此推斷可能是由於這個問題導致的,沒有去看官方文檔,只是個人猜測。
版本不同導致的另外一個問題是:

[root@Backup tmp]# /usr/local/mysql/bin/mysql -uroot -p <./all.sql
Enter password:
ERROR 1064 (42000) at line 279: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'STATS_PERSISTENT=0' at line 11

我偷懶,直接重新編譯一個相同版本的mysql了事,具體原因和版本不同,沒有仔細研究。
slave臨時跳過錯誤方法:
MySQL


mysql>slave stop;    #stop slave
mysql>SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
mysql>slave start;    #start slave

slave永久跳過錯誤的方法:


vi /etc/my.cnf
[mysqld]
slave-skip-errors=1062,1053,1146 #跳過指定error no類型的錯誤
#slave-skip-errors=all #跳過所有錯誤

copyright © 萬盛學電腦網 all rights reserved