資料移轉功能協助您實現同構或異構資料來源之間的資料移轉,適用於資料上雲遷移、阿里雲內部跨執行個體資料移轉、資料庫拆分擴容等業務情境。本文將介紹資料移轉功能支援的資料庫、版本和遷移類型,以及具體的配置文檔。
背景資訊
遷移類型說明
遷移類型 | 說明 |
庫表結構遷移 | DTS將源庫中待遷移對象的結構定義遷移至目標庫(例如表、視圖、觸發器、預存程序、索引等)。 對於異構資料庫之間的結構遷移,DTS會根據源庫和目標庫的文法,將結構定義的文法進行轉換,例如將Oracle中的number轉換為MySQL中的decimal。 |
全量資料移轉 | DTS將源庫中待遷移對象的存量資料,全部遷移到目標庫中。如果在配置資料移轉任務時,僅選擇了結構遷移和全量資料移轉,那麼在遷移過程中,源庫的新增資料不會被遷移至目標庫。 重要 為保障資料一致性,遷移期間請勿在源庫中寫入新的資料。如需實現不停機遷移,您需要在配置資料移轉任務時,同時選擇庫表結構遷移、全量遷移和增量遷移。 |
增量資料移轉 | DTS將會擷取源庫中待遷移對象的增量變更動作陳述式(例如從MySQL資料庫中的Binlog擷取增量變更語句),並根據目標庫的類型進行轉換,然後在目標庫中執行該語句,從而實現將增量資料即時移轉至目標庫。 |
資料同步與資料移轉的區別
資料移轉在某些情境下可實現部分資料同步的功能,但資料同步的網路穩定性更好、功能更豐富,推薦您使用資料同步功能。更多區別,請參見資料移轉和資料同步的區別是什麼。
重要
若您需要配置源庫與目標庫地區不同(跨境或跨地區)的遷移執行個體,源庫和目標庫需要滿足如下條件:
跨帳號資料移轉
是否支援建立跨阿里雲帳號的遷移任務(源庫或目標庫執行個體有是否跨阿里雲帳號配置項,且選擇為跨帳號)取決於資料庫的類型和接入方式。更多資訊,請參見配置跨阿里雲帳號的任務。
源庫限制
源庫的網路頻寬節流設定和業務要求如下表所示,更多限制,請參見具體的配置文檔。
限制項 | 說明 |
網路頻寬 | |
業務要求 | 日誌量的峰值小於1 TB,平均每小時的日誌量小於50 GB,峰值流量小於15 MB/s。 重要 DTS預設拉取整個資料庫執行個體的日誌,若非同步或遷移對象有大量資料變更,也會導致任務延遲。 在執行批量資料更新或對大欄位(如CLOB、BLOB、LONG等類型)資料進行大規模變更時,可能會導致任務延遲,建議將此類操作分批執行或儘可能避免執行。 請避免無主鍵表頻繁進行刪除或修改操作,否則可能會導致任務延遲。 請減少執行DDL操作的頻率,建議每秒執行的DDL語句不超過10條,否則可能會導致任務延遲。 請避免大事務操作(單個事務產生的日誌量超過100 GB),否則可能會導致任務失敗。
|
常見問題
DTS是否支援RDS MySQL Serverless執行個體?
支援。
DTS是否支援PolarDB MySQL版 Serverless叢集?
支援。
DTS是否支援RDS PostgreSQL Serverless執行個體?
當前僅目標庫支援,源庫不支援。
DTS是否支援專屬叢集MyBase中的執行個體?
支援。通過雲資料庫專屬叢集MyBase建立的資料庫執行個體,可以通過雲執行個體的接入方式被DTS正常讀取,您可以參考下表中的相應資料庫鏈路文檔進行配置。
什麼是自建資料庫?
配置DTS執行個體時,接入方式不是雲執行個體的資料庫執行個體。自建資料庫包含第三方雲的資料庫執行個體、部署在您本地的資料庫、部署在ECS執行個體的資料庫。
遷移方案概覽
您可以根據業務需求,在頁面右側的本頁導讀中,單擊相應的源庫遷移方案,以快速定位到對應地區,來查看支援的版本、遷移類型和配置步驟。
源為自建MySQL或RDS MySQL的遷移方案
重要
PolarDB-X 1.0中的資料庫須基於RDS MySQL建立,DTS暫不支援基於PolarDB MySQL版建立的資料庫。
PolarDB-X 1.0為目標時不支援庫表結構遷移,PolarDB-X 2.0為目標時均支援。
PolarDB-X 2.0需相容MySQL 5.7版本,且建議執行個體版本升級為5.4.11及以上,升級方式請參見查看和升級執行個體版本。
以AnalyticDB MySQL 2.0為目標的遷移方案暫未上線新版控制台,目前僅支援在舊版控制台配置。
源為PolarDB MySQL版的遷移方案
重要
PolarDB-X 1.0中的資料庫須基於RDS MySQL建立,DTS暫不支援基於PolarDB MySQL版建立的資料庫。
PolarDB-X 1.0為目標時不支援庫表結構遷移,PolarDB-X 2.0為目標時均支援。
PolarDB-X 2.0需相容MySQL 5.7版本,且建議執行個體版本升級為5.4.11及以上,升級方式請參見查看和升級執行個體版本。
源為PolarDB PostgreSQL版(相容Oracle)的遷移方案
源為PolarDB PostgreSQL版的遷移方案
源為Oracle的遷移方案
重要
PolarDB-X 1.0中的資料庫須基於RDS MySQL建立,DTS暫不支援基於PolarDB MySQL版建立的資料庫。
PolarDB-X 1.0為目標時不支援庫表結構遷移,PolarDB-X 2.0為目標時均支援。
PolarDB-X 2.0需相容MySQL 5.7版本,且建議執行個體版本升級為5.4.11及以上,升級方式請參見查看和升級執行個體版本。
源為自建PostgreSQL或RDS PostgreSQL的遷移方案
重要
源庫暫不支援RDS PostgreSQL Serverless執行個體,目標庫支援。
源為自建SQL Server或RDS SQL Server的遷移方案
重要
源庫支援的自建SQL Server需為Enterprise、Developer、Enterprise Evaluation、Standard、Web版本。
目標庫支援的自建SQL Server需為Enterprise、Developer、Enterprise Evaluation、Standard、Web版本。
若源自建SQL Server為2005版本或源RDS SQL Server為2008、2008 R2時,則不支援增量資料移轉。
Azure SQL Database作為源庫時,SQLServer增量同步處理模式需選擇輪詢查詢CDC執行個體做增量同步處理。
已支援SQL Server Cluster或SQL Server AlwaysOn High Availability Group。
在混合式日誌解析模式下(即SQLServer增量同步處理模式為非堆表用日誌解析增量同步處理,堆表用CDC增量同步處理的執行個體),支援的源庫(包含RDS SQL Server和自建SQL Server)有:
Web版本的SQL Server為源庫時,SQLServer增量同步處理模式僅支援解析源庫日誌做增量同步處理(不支援堆表)。
源為自建MongoDB或ApsaraDB for MongoDB的遷移方案
源為自建Redis或雲資料庫Tair(相容Redis)的遷移方案
源庫 | 目標庫 | 遷移類型 | 配置文檔 |
| | 全量資料移轉 增量資料移轉 | |
源為Db2 for i(AS/400)的遷移方案
重要
Db2 for i在控制台顯示為DB2 iSeries(AS/400)。
源庫 | 目標庫 | 遷移類型 | 配置文檔 |
Db2 for i 7.3、7.4版本 | 自建MySQL 5.1、5.5、5.6、5.7、8.0版本 RDS MySQL 所有版本
| 庫表結構遷移 全量資料移轉 增量資料移轉 | 文檔準備中 |
PolarDB MySQL版 所有版本 | 庫表結構遷移 全量資料移轉 增量資料移轉 | 文檔準備中 |
源為Teradata的遷移方案
重要
目前僅支援在新控制台進行配置,且遷移執行個體需位於上海、青島、張家口。
源為第三方雲的遷移方案
DTS支援將第三方雲(如Amazon RDS for MySQL、Amazon RDS for Oracle)中的資料移轉至阿里雲產品(如RDS MySQL )中。