Mysql
Mysql Server 版本:5.0.77-log 源碼分發
我在 MySQL 上有一個主(M)-從(S)複製。在故障轉移測試期間,master 被關閉,slave 通過doing 成為master
STOP SLAVE; RESET MASTER;
。由於只有 2 台伺服器(主伺服器和從伺服器),我沒有任何其他從伺服器可以更改主伺服器。在主伺服器上,MySQL 數據文件(ibdata 文件和 bin 日誌)被錯誤地刪除。有人可以告訴我如何使主伺服器加快速度並將其改回主伺服器嗎?謝謝。
STOP SLAVE; RESET MASTER;
不是進行故障轉移的正確方法。您可以根據需要停止從站,但 RESET MASTER 將刪除您自己的二進制日誌。您可能正在尋找RESET SLAVE; CHANGE MASTER TO MASTER_HOST='';
(RESET SLAVE ALL;
從 5.5 開始)。實際的故障轉移不是由 mysql 執行的,而是由外部實體執行的,無論是代理還是連接器。由於您已重置主數據和從屬二進制日誌,您需要使用其二進制日誌座標(使用 mysqldump 或 Percona XtraBackup)執行從屬(目前主)的複製,並在另一個方向設置複製。
如果您打算進行手動故障轉移,建議使用其中一個節點處於只讀模式的主-主複製。您還可以使用 MHA 之類的軟體來簡化流程。