MySQL 主從復制是常用的高可用架構方案之一,使用的時候需要注意一些維護細節。
1. 主從連接出現異常時,需要定期監測并及時處理。
mysql>show slave status \G;
上述命令可以查看當前從庫狀態,如果發現 Slave_IO_Running 和 Slave_SQL_Running 不為 YES,則說明連接出現異常。
2. 排除主從不一致的情況。
mysql>stop slave; mysql>show slave status \G; mysql>show master status; mysql>change master to master_log_file='...', master_log_pos=...; mysql>start slave; mysql>show slave status \G;
上述命令可以解決主從不一致的情況,步驟如下:
- 停止從庫服務
- 查看從庫狀態,定位主從不一致的位置
- 查看主庫狀態,確定主庫在同步時間點的 binlog 文件名和位置
- 修改從庫設置,使從庫指向正確的主庫 binlog 文件和位置
- 啟動從庫服務,并檢查是否正常同步
3. 備份主從庫數據。
mysqldump -uroot -p --single-transaction --master-data=2 --all-databases >backup.sql
上述命令可以備份主從庫數據。由于備份主從庫的過程中可能會修改主庫數據,所以設置 --single-transaction 參數,保證備份期間的一致性。此外,--master-data=2 參數會在備份文件的注釋中添加主庫 binlog 文件和位置。
以上就是 MySQL 主從維護的幾個注意事項,希望對大家有所幫助。
上一篇mysql主從步驟