1. 程式人生 > 資料庫 >Mysql主從同步Last_IO_Errno:1236錯誤解決方法

Mysql主從同步Last_IO_Errno:1236錯誤解決方法

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

<script>ec(2);</script>

從伺服器錯誤程式碼:

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 #跳過所有錯誤

總結

以上就是本文關於Mysql主從同步Last_IO_Errno:1236錯誤解決方法的全部內容,希望對大家有所幫助。如果您有什麼更好的處理方法,可以留言,大家一起交流討論。

感興趣的朋友可以參閱:MySQL表排序規則不同錯誤問題分析、企業生產MySQL優化介紹、MYSQL子查詢和巢狀查詢優化例項解析等,有問題請留言,小編會及時回覆大家。感謝朋友們對本站的支援!