我最近需要執行一些數據庫重新同步操作,並且有一個問題關於(似乎是)在將數據庫轉儲到master上之前發佈'RESET MASTER'的常見做法。爲什麼在重新啓動mysql slave時發出'reset master'
幾乎所有我發現圍繞這個過程的文檔都有一個'RESET MASTER',它在從主服務器上轉儲數據庫之前。
例如:https://stackoverflow.com/a/3229580/1570785
在生產環境中,然而,這似乎是適得其反,主要是因爲在「重置主」命令將清除現有的二進制日誌。因此,如果複製中斷時主服務器出現問題,最終會出現不一致/損壞的主服務器和不同步從服務器。
鑑於此過程需要首先執行(即,mysql複製出現問題),因此僅僅因爲刪除了binlog(可能用於從完整災難中恢復)似乎是不明智的。奴隸需要重新啓動。
我真的在問:我錯過了什麼 - 是否有正當的理由在從主服務器轉儲之前執行'RESET MASTER'?