通過數據傳輸服務(DTS)進行三個實例間的相互雙向同步后,出現數據缺失。本文介紹如何避免這種情況的發生。

問題描述

通過DTS配置三個實例之間的雙向同步后,發現數據出現缺失。例如下圖所示的配置場景:

三個實例雙向同步

可能原因

雙向同步場景的關鍵在于防止數據回環,不適用于三個實例間的互相同步。以上圖為例:DB1的數據通過DTS同步至DB2時,為防止數據回環至DB1,DTS會使用基于事務表的方式對事務進行打標,實現數據過濾。但同時,這部分被打標的數據也不會同步到DB3。因此,就出現了DB3缺少數據的情況。同理,DB3同步至DB2的數據,會出現DB1缺少數據的情況。

解決方法

請勿配置成上述同步場景。