我從來沒有同步多個服務器。我正在研究一個需要多個MariaDB服務器來同步特定表的項目。每個表格只能在一臺服務器上進行更改,但每個表格都將在不同的服務器上進行更改。同步表單向不同方向的不同表格
鑑於表A,B,C,和d:
A - 設置表 - 只有更新,當用戶更改設置
B,C,d - 工作表 - 這些都會更新一次幾秒鐘的工作由個人服務器完成。
主服務器 - 變化A;需要B,C,D實時更新。
服務器2 - 更改B;需要A實時更新。
服務器3 - 更改C;需要A實時更新。
服務器4 - 變更D;需要A實時更新。
看看複製教程,我看到很多關於單向和雙向的信息,但是我一直未能找到與我正在嘗試做的事情相匹配的任何內容。
由於信息是時間敏感的,所以數據必須實時同步。如果服務器彼此失去連接,則只要連接恢復,我仍然需要同步數據。
這些表格將全部通過各自服務器上的PHP代碼進行更新。這些服務器都在運行Linux。這是MariaDB本身可以完成的事情嗎?或者以另一種方式處理這個問題會更好嗎?我真的希望避免將整個數據庫雙向複製到所有服務器,因爲大多數數據對於任何服務器都是不必要的,但主服務器和創建它的服務器是不必要的。
嗯......那是我害怕聽到的。忘了提及這些服務器將位於不同的地理位置,我希望這樣做可以幫助減輕任何延遲或連接問題。對我來說,做一些類型的複製會比我的工作線程更好,並且等待連接再次可用於主數據庫服務器。由於我期望在每臺服務器的個人表中建立千兆字節的數據,因此我不想將其複製到所有這些表中。 –
我添加了註釋以解決連接和延遲問題。 –
每個工作線程應該每天向數據庫寫入8640行。我希望每臺服務器上都有成千上萬個這樣的設備。每行由bigint id,Decimal(5,1),時間戳和2個INT組成。根據我現在工作表中的數據做數學計算,看起來我會每5秒鐘爲一千個線程傳輸大約126 KB的數據。可能從工作人員寫入主數據庫畢竟不是一個壞主意...... –