2010-11-04 30 views
2

我有2個使用MySQL設置的服務器。它使用標準的複製設置,一個從屬設備,沒有循環複製。如何確定在日誌中剩下多少數據

有沒有辦法通過編程的方式告訴從機在從二進制日誌讀取數據後有多遠?

如果我跑了聲明:

SHOW MASTER STATUS; 

在主,並在從運行

SHOW SLAVE STATUS; 

,我可以比較來自主地位的立場列,並從奴隸Read_Master_Log_Pos列狀態來確定從機背後的距離。

但是,只有當從設備正在從主設備寫入的同一文件讀取時,這才起作用。因此,如果從服務器仍在讀取先前的日誌文件,因爲它正在運行,我無法弄清楚如何確定剩下多少數據,直到它達到主服務器所在的當前位置。僅使用SQL的解決方案將是最佳選擇,但我願意接受其他解決方案。希望不需要閱讀包含日誌文件的目錄。

回答

0

我喜歡使用SHOW SLAVE STATUS中的'Seconds_behind_master'字段來確定是否抓住MASTER-SLAVE服務器。作爲一名次級警衛,我還對兩臺服務器上的特定表(即經常更新的表)執行COUNT(*)查詢,然後比較記錄數。

相關問題