首先遇到這個是因為binlog位置索引處的問題,不要reset slave;
reset slave會將主從同步的文件以及位置恢復到初始狀態,一開始沒有數據還好,有數據的話,相當於重新開始同步,可能會出現一些問題;
一般做主從同步,都是要求以后的數據實現主從同步,而對於舊的數據完全可以使用數據庫同步工具先將數據庫同步,完了再進行主從同步;
好了遇到上面的問題,正確做法是:
1.打開主服務器,進入mysql
2.執行flush logs;//這時主服務器會重新創建一個binlog文件;
3.在主服務上執行show master slave \G;顯示如下:
4.來到從服務器的mysql;
5.stop slave;
6.change master to master_log_file='mysql-bin.000012',master_log_pos=154;//這里的file和pos都是上面主服務器master顯示的。
7.start slave;//這時候就應可以了
8.show slave status \G;//結果如下: