萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> mysql主從同步失敗Last_IO_Error: Got fatal error 1236 from master解決方法

mysql主從同步失敗Last_IO_Error: Got fatal error 1236 from master解決方法

mysql教程主從同步失敗Last_IO_Error: Got fatal error 1236 from master解決方法

遇到這樣的錯誤如:“Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Could not find first log file name in binary log index file'”等或由於清數據導致主從庫不同步了,解決辦法如下:

先進入slave中執行:"slave stop;"來停止從庫同步;

再去master中執行:"flush logs;"來清空日志;

然後在master中執行:"show master status;"查看下主庫的狀態,主要是日志的文件和position;

然後回到slave中,執行:"CHANGE MASTER TO MASTER_LOG_FILE='log-bin.000004',MASTER_LOG_POS=106;",文件和位置對應master中的;

最後在slave中執行:"slave start;"來啟動同步。

關於配置主從mysql服務器方法

1、二台機器(我的是winxp ip 192.168.0.119從主服務器 win2003 192.168.0.17主服務器)
2、在兩台機器分別裝上mysql數據庫教程教程服務器(注:最好是從服務器版本要高於主服務器版本)
3、為了方便記憶我把主服務器192.168.0.17稱作111cn.net-a,從服務器192.168.0.119 111cn.net-b機器

首頁我們配置主服務器,創建一個數據庫 a111cnnet 創建表test

找到你的my.ini 裡面的[mysqld] 在下面增加

server-id =111 #唯一標識,只要不和從服務器相同就行了。
log-bin=mysql-bin #d:/mysql/log/ #必須開啟這裡,告訴主服務器以二進制日志
binlog-do-db=a111cnnet # 要同步的數據庫,多可寫多行
binlog-ignore-db=mysql #忽略的數據庫,多可寫多行

下面要在111cn.net-a上創建一個帳號,以便111cn.net-b可以訪問如下。

grant file,replication slave,replication client,super on *.* to backup2@'192.168.0.119' identified by 'backup2';

這樣我們就創建一個
用戶名 backup2
密碼 backup2
只允許  192.168.0.119 這台機器連接

好了要111cn.net-a 配置好,下面來看111cn.net-b配置

1、找到你的my.ini打開在[mysqld]下,增加如下代碼

server-id =112
master-host=192.168.0.17 #主服務器ip
master-user=backup2 #主服務器mysql賬號,上面創建的
master-password=backup2 #主服務器mysql密碼,上面創建的
master-connect-retry=1 #如何服務器重新連接時間為60


replicate-do-db=a111cnnet  #需要備份數據庫
replicate-ignore-db=mysql #忽略的數據庫

好了配置就完成了,重啟動111cn.net-a再啟動111cn.net-b ,現在在111cn.net-b執行show slave status

顯示
slave_io_state  waiting for master to send event
slave_io_running  yes
slave_sql_running  yes

說明配置己經成功了。

好了,你現在可以在111cn.net-a創建一個表,或加一條記錄看看,是不是數據同步了

如果不行,你把111cn.net-a 和 111cn.net-b 裡面的master.info刪除,重啟動再試下

更多詳細內容請查看:http://www.111cn.net/database/mysql/35730.htm

copyright © 萬盛學電腦網 all rights reserved