1. 程式人生 > >記錄一次Mysql主從不同步事故問題於事故解決辦法

記錄一次Mysql主從不同步事故問題於事故解決辦法

count cover counter img 一次 png 過去 stop set

首先在昨天的時候我可能在優化zabbix庫的時候動了庫中的events表。導致了接下來的問題。經過查看未解決前問題呈現如下:
技術分享圖片
我們可以看到從庫與主庫不同步的原因是這個:
技術分享圖片
這個問題的學名叫:外鍵束縛。顧名思義,我們可以看一下這兩個表結構
技術分享圖片

技術分享圖片
發現都有一個字段 eventid,當我們對表events中的eventid字段進行操作外之後導致event_recovery不能insert數據了,所以我們要跳過去,那怎麽跳過去呢?
首先我們在從庫上執行:stop slave;
其次執行:SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
最後其從線程:start slave;
我們再查看狀態:
技術分享圖片
OK,到此問題解決完畢。

提示:大家別濫用SET GLOBAL SQL_SLAVE_SKIP_COUNTER = n;(跳過為一個Binlog event group, 也就相當於一個事務),所以當我們執行這個操作的時候要看看我們要跳過的是什麽怎麽查看呢
根據slave status中的Relay_Log_File和Relay_Log_Pos兩個值 ,先查看當前被中斷的binlog event group操作是什麽?
查看的命令:
show relaylog events in "Relay_Log_File" from Relay_Log_Pos limit n;
好了這個問題到此告一段落,整理成筆記以便以後出現類似問題查看。

記錄一次Mysql主從不同步事故問題於事故解決辦法