主從輔助無法同步問題解決(一)
這裏首先對單主單從M-S的操作步驟先做下簡要說明(具體操作略。。。)
一.環境準備;
二.master操作
1.開啟主服務器二進制日誌(並加入git選項);
2.在主服務器的MySQL上創建rep用戶,並用create和insert命令模擬在MySQL上加入數據;
3.通過mysqldump命令邏輯備份master上的二進制日誌,用scp命令發送給slave;
三.slave操作
1.驗證用戶rep是否能登錄,(如果登錄出現ssl無法通過問題,參考上篇博客,其實方法與本篇相同);
2.為避免slave上沒必要的二進制文件,在導入master二進制日誌時臨時關閉slave從服務器二進制日誌;
4.在slave中配置slave環境;
5.啟動slave服務;
(本篇問題所在步驟)
6.查看slave屬性;
7.在master中修改數據,在slave上驗證,如果能同步則說明主從完成同步。
在上述操作步驟中,在配置完slave後無法同步
無論在master上增刪改都無法同步至slave上
通過show slave status\G 命令查看後顯示slave_SQL_Running:No 和error 1007出現:
在/etc/my.cnf中加入一條命令就能解決這個錯誤: slave_skip_error=1007;
讓MySQL跳過這個錯誤;
然後systemcal restart mysqld,重啟mysqld;
![技術分享圖片](http://i2.51cto.com/images/blog/201803/21/0081391006dfe8be9a152b4ff32199d4.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
同上面的操作一樣在/etc/my.cnf的配置文件中加入命令:slave_skip_error=1050;
![技術分享圖片](http://i2.51cto.com/images/blog/201803/21/f54ecd52bbbc0252bdcf7606c0bfaca2.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
然後systemcal restart mysqld,重啟mysqld;
這時候在看slave屬性:
![技術分享圖片](http://i2.51cto.com/images/blog/201803/21/27563a6325460084cde2dba87550ff0c.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
錯誤沒有了,通過查詢看見數據已經可以同步了,
這時候再從/etc/my.cnf中註釋加入的兩行命令:
#slave_skip_error=1007;
#slave_skip_error=1050;
MySQL依然同步(筆者這裏的錯誤認為是2個簡單的小錯誤,不一定對所有error有效)。
總結:
在master生成日誌後,又存在一定的操作,使master中數據改動,在slave中導入中繼日誌後兩個數據庫的數據不一致,所以不能同步數據,在在配置文件中用skip跳過錯誤的之後,同步得意進行,slave自動從master上同步數據,工作得意正常進行。
主從輔助無法同步問題解決(一)