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