2017-01-16 45 views
0

我有一個運行在主服務器上的Web應用程序。Mysql多個離線數據庫

同一應用程序可以運行在多個脫機服務器。這些離線服務器在技術上並不處於離線狀態,但互聯網連接並不可靠。

當互聯網成爲可在任何脫機服務器,我想與主服務器同步其數據。數據同步將是兩種方式,主服務器的更改將轉到脫機服務器,反之亦然。

我在看MySQL的複製,它會工作無縫如果它只是一個主服務器和一臺離線服務器,但由於可以有多個脫機服務器,我想什麼是前進的最好方式。

的MySQL版本:MySQL的 14.14版DISTRIB 52年5月5日,爲Linux下(x86_64)使用readline的5.1

+0

你有哪個版本的mysql? – x01saa

+0

您可以使用multimaster配置主 - 主複製。 – GoodWasHere

+0

在多主節點中,解決方案是以循環方式添加複製。這意味着A - > B - > C - > D - > A。在這個問題中,如果任何節點關閉,複製將會停止,這對我來說是一個巨大的可能性。 – ABJ

回答

0

MySQL的複製是不是你想要的這裏。

  1. 默認情況下MySQL副本是隻讀的。這是有原因的。

  2. MySQL複製假定一個線性 「時間軸」。沒有規定合併來自多個來源的更改;即使您將副本設置爲從主服務器分離時也是可寫的,但之後將無法繼續從主服務器複製更改,因爲其數據會與主服務器分離,並且無法協調更改。

您將需要在應用程序中實現同步方案。請注意,這可能會很複雜 - 您需要考慮通過分割的兩個「邊」對對象進行更改的情況。