對比實時同步項可以清晰反饋出源數據庫和目標數據庫的數據是否存在差異。為了盡可能減少業務的影響和業務中斷時間,實時同步場景提供了對象級對比和數據級對比功能,幫助您確定合適的業務割接時機。
對象級對比:支持對數據庫、索引、表、視圖、表的排序規則等對象進行對比。
數據級對比:支持對表的行數和內容進行對比。
說明
全量同步中的任務無法進行數據級對比。
如果單獨對目標庫進行數據修改操作,有可能數據檢驗不準確。
前提條件
- 已登錄數據庫復制服務控制臺。
操作步驟
1、在“實時同步管理”界面,選中指定同步任務,單擊任務名稱,進入“基本信息”頁簽。
2、單擊“同步對比”頁簽,進入“同步對比”信息頁面。
3、對比同步項。
創建對象級對比:選擇“對象級對比”頁簽,單擊“開始對比”后稍等一段時間再單擊,觀察源數據庫和目標數據庫的各個對比項結果是否一致。若需要查看結果詳情,可單擊指定對比項操作列的“詳情”按鈕。
圖 同步對象對比

創建數據級對比:選擇“數據級對比”頁簽,單擊“創建對比任務”,選擇“對比類型”、“對比方式”、“對比時間”和“對象選擇”,單擊“是”提交對比任務。
圖 創建數據對比任務

對比類型:分為行數對比和內容對比。
行數對比:用于對比源和目標端的表的行數是否相等。
說明任務進入增量階段后,用戶可以創建行對比任務。
Oracle->GaussDB(for openGauss)同步任務,當全量任務結束的時候會自動觸發行對比任務。
內容對比:用于對比源和目標端的表的數據是否一致。
說明任務進入增量階段后,用戶可以創建內容對比任務。全量同步完成后,源庫數據不能發生變更,否則內容對比結果會不一致。
由于內容對比功能目前只支持帶有單字段主鍵或單字段唯一索引的表,不支持內容對比的表可以使用行數對比功能。所以數據級對比功能需要結合業務場景,選用行數對比或者內容對比。
對比方式:分為靜態對比和動態對比兩種。
靜態對比:對源數據庫和目標數據庫進行一次全量內容對比,內容對比完成后對比任務結束,適用于無數據變化的非業務時間。
動態對比:先對源數據庫和目標數據庫進行一次全量內容對比,對比任務完成后進入增量對比階段,實時比對源數據庫和目標數據庫的增量數據,適用于有數據變化的業務時間。
說明目前僅MySQL引擎支持對比方式選擇。
對比時間:可設置為“立即啟動”和“稍后啟動”。由于同步具有輕微的時差,在數據持續操作過程中進行對比任務,可能會出現符合實際情況的少量數據不一致對比結果,推薦結合對比定時功能,選擇在業務低峰期進行對比,得到更為具有參考性的對比結果。
對象選擇:可根據具體的業務場景選擇需要進行對比的對象。
4、對比任務提交成功后,返回“數據級對比”頁簽,單擊刷新列表,可以查看到所選對比類型的對比結果。
圖 同步數據對比

由于內容對比功能目前只支持帶有單字段主鍵或單字段唯一索引的表,不支持內容對比的表可以使用行數對比功能。所以數據級對比功能需要結合業務場景,選用行數對比或者內容對比。
若需要查看行數對比或者內容對比詳情,可單擊指定對比類型操作列的“查看對比報表”,頁面將跳轉至新的窗口,可觀察對比結果的詳細情況。
圖 數據級對比詳情

說明已取消的對比任務也支持查看對比報表。