1
我有一個圓形木裏主MySQL的設置如下多主MySQL複製位置
DB1 ------> DB2 ------> DB3 --
| |
------------<---------------
我初始化的複製對相同的數據和相同的主位置索引的3臺DB服務器上,如果該位置索引成爲非這意味着3個數據庫之後會不一致,因爲一次只能寫入一個主數據庫?
我有一個圓形木裏主MySQL的設置如下多主MySQL複製位置
DB1 ------> DB2 ------> DB3 --
| |
------------<---------------
我初始化的複製對相同的數據和相同的主位置索引的3臺DB服務器上,如果該位置索引成爲非這意味着3個數據庫之後會不一致,因爲一次只能寫入一個主數據庫?
二進制日誌座標與具有一致數據的實例無關。
您可以在DB1上編寫二進制日誌數週,然後進行備份並使用它來初始化DB2。然後稍後再進行DB2備份並使用它來初始化DB3。之後,所有三臺服務器將具有相同的數據,但二進制日誌文件和索引完全不同。
您可以改爲使用Global Transaction IDs(不是二進制日誌座標)來管理複製。
無論如何,無論您如何管理複製,數據都會出現不同步的風險。您可以運行包含non-deterministic expressions的查詢。你可以turn off binary logging temporarily。或者日誌在轉移到副本時可能會損壞。
如果要測試數據是否一致,請使用pt-table-checksum。
謝謝,真的很豐富 –