在配置資料同步或遷移任務對象時,DTS支援通過名稱映射功能,設定任務對象(庫、表、列)在目標庫執行個體中的名稱。您可以使用此功能將資料同步或遷移到目標庫執行個體的指定對象中,或在目標庫執行個體中建立一個與任務對象結構相同但名稱不同的對象。
使用情境
情境 | 說明 |
在目標庫執行個體中建立一個新對象並接收任務資料。 |
|
指定目標庫執行個體中接收資料的對象,例如將多張庫表彙總成大表。 | 需要提前在目標庫執行個體中建立用於接收資料的對象,並確保資料的相容性。
|
在目標庫執行個體中建立一個新對象。 | 僅遷移任務支援,遷移類型需只勾選庫表結構遷移。 |
前提條件
任務處於對象配置階段,且需要執行庫表列映射操作。進入對象配置階段的方法,請參見同步方案概覽和遷移方案概覽中的相關配置文檔。
建議遷移類型或同步類型勾選所有選項,否則可能會導致同步或遷移結果不符合預期。
舊版配置頁需處於配置任務對象及高級配置階段。
注意事項
任務一旦啟動,請勿再執行庫表列映射操作,否則可能導致資料丟失或任務失敗。
Tair或Redis執行個體僅支援庫名映射,指定接收資料的庫(DB 0~DB 255)。
來源資料庫類型為Tair/Redis時,不支援批量映射。
目標資料庫類型為DataHub時,不支援庫名映射。
目標資料庫類型為Kafka時,若您使用映射功能修改了表名稱,資料將會被寫入到您填寫的Topic中。您須確保在表名稱中填寫的Topic名稱在目標Kafka執行個體中真實存在,否則將會導致任務失敗。
若任務對象選擇的粒度為整庫,則僅支援對庫名進行映射。
若您需要使用表名或列名映射:來源資料庫類型為MongoDB時,任務對象的選擇粒度需為集合;來源資料庫類型為Tair/Redis時,任務對象的選擇粒度需為Redis DB;來源資料庫為其他類型的資料庫時,任務對象的選擇粒度需為表。
如果使用了庫表列名映射功能,可能會導致依賴這個對象的其他對象同步或遷移失敗。
庫表列名單個映射
將任務對象從源庫對象移動到已選擇對象地區框中。
開啟庫或表的映射介面。
按右鍵已選擇對象地區的目標對象。
將滑鼠指標放在目標對象上,然後單擊目標對象後面出現的編輯按鈕。
在彈出的對話方塊中,修改該對象在目標庫執行個體中的名稱。
說明在執行庫或表名映射時,部分執行個體(請以控制台實際介面為準)還支援新增附加列和篩選增量任務的SQL(DML和DDL)功能。
如果庫名映射和表名映射選中的語句不同,以表名映射時選擇的語句為準。
您還可以在編輯表對話方塊中,配置條件過濾任務資料。更多資訊,請參見設定過濾條件。
庫名映射
在彈出的編輯Schema對話方塊中,設定該資料庫在目標庫執行個體中的名稱。
說明源和目標資料庫類型均為SQLServer時,彈出的是編輯庫名對話方塊。
表名映射
在彈出的編輯表對話方塊中,設定該資料表在目標庫執行個體中的名稱。
列名映射
在彈出的編輯表對話方塊中的列地區,取消選中全表同步,然後設定對應的列在目標庫執行個體中的名稱。
說明修改列名後,您可以將滑鼠放置在列名後的,查看原列名。
單擊確定。
根據提示完成後續操作。
庫表列名批量映射
將任務對象從源庫對象移動到已選擇對象地區框中。
單擊已選擇對象地區右上方的大量編輯。
在大量編輯對話方塊中,根據需求批量映射庫或表的名稱。
根據需求選擇大量編輯的類型。本案例選擇為選擇所有的庫和表。
在選擇編輯對象框中,勾選需要編輯的對象。
單擊選擇編輯類型地區的對象名稱頁簽。
說明在執行批量映射時,部分執行個體(請以控制台實際介面為準)還支援新增附加列和篩選增量任務的SQL(DML和DDL)功能。
根據需求選擇生效範圍。
在原有重新命名基礎上修改:表示批量修改後的庫表列的名稱是在原來的重新命名基礎上修改的。
在原名基礎上修改:表示批量修改後的庫表列的名稱是在原名稱基礎上修改的。
選擇庫表名更改的規則,並設定更改後的庫或表名稱。
名稱中添加首碼或尾碼:選擇庫表名更改規則選擇為名稱添加前尾碼,並輸入首碼和尾碼。
統一更新名稱:選擇庫表名更改規則選擇為統一更名,並輸入更改後的名稱。
名稱中統一減少某部分:選擇庫表名更改規則選擇為名稱中統一減少,並輸入需要減少的關鍵詞。
單擊應用,添加設定好的批量映射規則。
單擊確定。
根據提示完成後續操作。
同步或遷移部分列
將待同步或遷移的表,從源庫對象移動到已選擇對象地區框中。
按右鍵已選擇對象地區的目標對象,開啟表的映射介面。
在彈出的編輯表對話方塊中的列地區,取消選中全表同步。
取消選中無需同步或遷移的列。
單擊確定。
根據提示完成後續操作。
常見問題
如何過濾不需要同步或遷移的列?
使用列名映射,取消選中全表同步,然後取消選中對應列的複選框。
列名映射是否支援修改列的類型?
不支援。
大量編輯的規則是否支援修改?
不支援。您可以單擊目標規則後的刪除該映射規則,然後重新添加規則。
為什麼大量編輯的規則不見了?
可能是您在設定好批量映射規則後沒有單擊應用,或者誤刪除了規則。