2012-04-03 122 views

回答

1

通常一個新的日誌文件被創建時從I/O線程啓動時,如果你的舊中繼日誌被刪除,這意味着通常是奴隸與主人同步(所有事件被應用到從DB)。這意味着您的設置按預期工作。

如果你需要從持續性的日誌文件,你應該激活從主機上的二進制日誌(像你一樣對主人的複製設置)。你也想要複製本身的更新,這是使用log-slave-updates參數實現的。下面是從啓動mysqld的conf的例子:

expire_logs_days = 5 
log-slave-updates = 1 
log_bin   = /var/lib/mysql/mysql-bin.log 

如需進一步信息,參數是指MySQL docs on replication options

保持也記住,這將花費你額外的磁盤空間,也需要不同的備份戰略,以執行您的數據庫的時間點恢復。

+0

哪個日誌最適合使用恢復的信息進行備份。 master或mysql-bin上的mysql-bin,slave上的mysql-relay-bin? – user1309635 2012-04-03 08:11:18

+0

大多數時候,我會堅持到主的二進制日誌,因爲這些信息是最新的(當你複製未運行想象數據庫崩潰)。例如。我的備份按以下方式進行:停止複製後從站上的錶轉儲,將主站上的二進制日誌複製掉。在恢復的情況下,我會將轉儲寫回主服務器,並在此之後對其應用binlog。 – 2012-04-03 08:18:09

+0

無法快速回復。如何知道要從二進制日誌恢復點?不要重複或丟失ID。 – user1309635 2012-04-03 08:33:49