使用技巧(需要人為配合)
如果您使用的是全量遷移模式(離線遷移),確保源和目標數據庫無業務寫入,保證遷移前后數據一致。
如果您使用的是全量+增量遷移模式(在線遷移),支持在源數據庫有業務數據寫入的情況下進行遷移,推薦提前2-3天啟動任務,并配合如下使用技巧和對應場景的操作要求,以確保順利遷移。
基于以下原因,建議您結合定時啟動功能,選擇業務低峰期開始運行遷移任務,相對靜態的數據,遷移時復雜度將會降低。
全量遷移會對源數據庫有一定的訪問壓力。
遷移無主鍵表時,為了確保數據一致性,會存在3s以內的單表級鎖定。
正在遷移的數據被其他事務長時間鎖死,可能導致讀數據超時。
建議您結合數據對比的“稍后啟動”功能,選擇業務低峰期進行數據對比,以便得到更為具有參考性的對比結果。由于同步具有輕微的時差,在數據持續操作過程中進行對比任務,可能會出現少量數據不一致對比結果,從而失去參考意義。
操作要求
由于一些無法預知或人為因素及環境突變導致遷移失敗的情況,數據庫復制服務提供以下常見的操作限制,供您在遷移過程中參考。
類型名稱
操作限制(需要人為配合)
注意事項
不支持高版本到低版本的遷移。
不支持系統庫的遷移,用戶名和角色需要在目標庫手動創建。
目標數據庫的遷移賬號必須是有寫權限。對于目標數據庫是集群的實例,遷移賬號還要有對config數據的讀權限。
對于在源數據庫已經存在TTL索引的集合,或者在增量遷移期間在源庫數據創建了TTL索引的集合,由于源數據庫和目標庫數據庫時區,時鐘的不一致,不能保證遷移完成之后數據的一致性。
不支持_id字段沒有索引的集合。
出云遷移的目標數據庫如果是副本集,則建議目標數據庫填寫所有的主節點和備節點信息,以防主備切換影響遷移任務。如果是填寫主備節點,注意填寫的節點信息必須屬于同一個副本集實例。
出云遷移的目標數據庫如果是集群,則建議填寫多個mongos信息,以防單個mongos節點故障影響遷移任務,并且多個mongos信息還可以實現負載均衡。如果填寫多個mongos信息,注意所有所填的信息必須屬于同一個集群實例。
為了提高遷移的速度,在開始遷移之前,建議在源數據庫刪掉不需要的索引,只保留必須的索引。
操作須知
遷移過程中,不允許修改、刪除連接源和目標數據庫的用戶的用戶名、密碼、權限,或修改源和目標數據庫的端口號。
在整個遷移過程中,為了保持數據一致性,不允許對正在遷移中的目標數據庫進行修改操作(包括但不限于DDL、DML操作)。
在整個遷移過程中,不支持源數據庫主備切換導致數據回滾的情況。