数据迁移功能帮助您实现同构或异构数据源之间的数据迁移,适用于数据上云迁移、阿里云内部跨实例数据迁移、数据库拆分扩容等业务场景。本文将介绍数据迁移功能支持的数据库、版本和迁移类型,以及具体的配置文档。

说明
  • DTS控制台全面升级,新版控制台优化配置流程并新增多条迁移链路,欢迎体验。
  • 数据迁移在某些场景下可实现部分数据同步的功能,但数据同步的网络稳定性更好、功能更丰富,推荐您使用数据同步功能。更多区别,请参见数据迁移和数据同步的区别
  • 通过云数据库专属集群MyBase创建的实例可被DTS正常读取,下表中的配置文档同样适用于数据库专属集群MyBase的迁移场景(例如从自建MySQL迁移至云数据库专属集群MyBase中的RDS MySQL实例)。

优惠活动

DTS优惠活动,最低0折

迁移类型说明

迁移类型 说明
库表结构迁移

DTS将源库中待迁移对象的结构定义迁移至目标库(例如表、视图、触发器、存储过程等)。

对于异构数据库之间的结构迁移,DTS会根据源库和目标库的语法,将结构定义的语法进行转换,例如将Oracle中的number转换为MySQL中的decimal。

全量数据迁移 DTS将源库中待迁移对象的存量数据,全部迁移到目标库中。如果在配置数据迁移任务时,仅选择了结构迁移和全量数据迁移,那么在迁移过程中,源库的新增数据不会被迁移至目标库。
说明 为保障数据一致性,迁移期间请勿在源库中写入新的数据。如需实现不停机迁移,您需要在配置数据迁移任务时,同时选择结构迁移全量数据迁移增量数据迁移
增量数据迁移 DTS会先在源库中实现用于全量数据迁移的静态快照,然后将快照数据迁移到目标库,最后再将迁移过程中源库产生的增量数据实时同步至目标库。
说明 增量数据迁移会保持实时同步的状态,所以迁移任务不会自动结束,您需要手动结束迁移任务。

迁移方案概览

DTS支持以下迁移方案,您可以根据业务需求单击具体方案,来查看支持的版本、迁移类型和配置步骤。
说明

下表中各类自建数据库(例如自建MySQL、SQL Server、Oracle等)的支持的部署位置如下:

  • 有公网IP的自建数据库
  • 无公网IP:Port的数据库(通过数据库网关DG接入)
  • 通过云企业网CEN接入的自建数据库
  • ECS上的自建数据库
  • 通过专线/VPN网关/智能接入网关接入的自建数据库

源为自建MySQL或RDS MySQL的迁移方案

源库 目标库 迁移类型 配置文档
  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:
PolarDB MySQL

所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:
PolarDB-X 1.0和2.0
说明
  • PolarDB-X 1.0中的数据库须基于RDS MySQL创建,DTS暂不支持基于PolarDB MySQL创建的数据库。
  • PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见版本升级

全量数据迁移

增量数据迁移

新控制台:RDS MySQL迁移至PolarDB-X 2.0

旧控制台:从自建MySQL迁移至PolarDB-X

说明 以PolarDB-X 1.0为目标的迁移方案暂未上线新版控制台,目前仅支持在旧版控制台配置。

云原生数据仓库AnalyticDB MySQL版

2.0、3.0版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:RDS MySQL迁移至AnalyticDB MySQL 3.0

旧控制台:文档准备中

说明 以AnalyticDB MySQL 2.0为目标的迁移方案暂未上线新版控制台,目前仅支持在旧版控制台配置。

云原生数据仓库AnalyticDB PostgreSQL版

4.3、6.0版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
  • 自建PostgreSQL

    9.4.8及以上版本、9.5、9.6、10.x、11.x、12、13版本

  • RDS PostgreSQL

    9.4、10、11、12、13版本

全量数据迁移

增量数据迁移

文档准备中

阿里云消息队列Kafka版

0.10.1.0~2.x版本

自建Kafka

0.10.1.0~2.7.0版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:RDS MySQL迁移至阿里云消息队列Kafka版

旧控制台:从RDS MySQL迁移至自建Kafka

DataHub

所有版本

库表结构迁移

RDS MySQL迁移至DataHub
说明 仅支持在新版控制台配置。

Elasticsearch

5.5、5.6、6.3、6.7、7.4、7.10版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台配置。
  • DB2 for LUW

    9.5、9.7、10.1、10.5、11.1、11.5版本

  • DB2 for i

    7.3、7.4版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中

自建Oracle(RAC或非RAC架构)

9i、10g、11g、12c、18c、19c版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中

源为RDS MariaDB的迁移方案

说明 仅支持在旧版控制台配置。
源库 目标库 迁移类型 配置文档

RDS MariaDB

10.3版本

RDS MariaDB

10.3版本

库表结构迁移

全量数据迁移

增量数据迁移

RDS实例间的数据迁移
  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

增量数据迁移

从RDS MariaDB迁移至RDS MySQL

源为RDS PPAS的迁移方案

说明 仅支持在旧版控制台配置。
源库 目标库 迁移类型 配置文档
RDS PPAS

所有版本

PolarDB O引擎

所有版本

库表结构迁移

全量数据迁移

增量数据迁移

从RDS PPAS迁移至PolarDB O引擎集群

源为PolarDB MySQL的迁移方案

源库 目标库 迁移类型 配置文档

PolarDB MySQL

所有版本

PolarDB MySQL

所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:PolarDB MySQL间迁移

旧控制台:PolarDB MySQL集群间的数据迁移

  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:PolarDB MySQL迁移至RDS MySQL
PolarDB-X 1.0和2.0
说明
  • PolarDB-X中的数据库须基于RDS MySQL创建,DTS暂不支持基于PolarDB MySQL创建的数据库。
  • PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见版本升级

全量数据迁移

增量数据迁移

新控制台:PolarDB MySQL迁移至PolarDB-X 2.0

旧控制台:文档准备中

说明 以PolarDB-X 1.0为目标的迁移方案暂未上线新版控制台,目前仅支持在旧版控制台配置。

云原生数据仓库AnalyticDB MySQL版

3.0版本

库表结构迁移

全量数据迁移

增量数据迁移

PolarDB MySQL迁移至AnalyticDB MySQL 3.0
说明 仅支持在新版控制台配置。

云原生数据仓库AnalyticDB PostgreSQL版

4.3、6.0版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台配置。

阿里云消息队列Kafka版

0.10.1.0~2.x版本

自建Kafka

0.10.1.0~2.7.0版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台配置。

DataHub

所有版本

库表结构迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台配置。

自建Oracle(RAC或PDB架构、非RAC架构)

9i、10g、11g、12c、18c、19c版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中

源为PolarDB O引擎的迁移方案

源库 目标库 迁移类型 配置文档

PolarDB O引擎

所有版本

PolarDB O引擎

所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:PolarDB O引擎间迁移

旧控制台:PolarDB O引擎集群间的数据迁移

自建Oracle(RAC或PDB架构、非RAC架构)

9i、10g、11g、12c、18c、19c版本

库表结构迁移

全量数据迁移

增量数据迁移

PolarDB O引擎迁移至自建Oracle

阿里云消息队列Kafka版

0.10.1.0~2.x版本

自建Kafka

0.10.1.0~2.7.0版本

增量数据迁移

文档准备中

源为PolarDB-X的迁移方案

说明 仅支持在新版控制台配置。
  • 源为PolarDB-X 2.0
    源库 目标库 迁移类型 配置文档
    PolarDB-X 2.0
    说明 PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见版本升级
    PolarDB-X 2.0
    说明 PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见版本升级

    库表结构迁移

    全量数据迁移

    增量数据迁移

    PolarDB-X 2.0间的迁移
    • 自建MySQL

      5.1、5.5、5.6、5.7、8.0版本

    • RDS MySQL

      所有版本

    库表结构迁移

    全量数据迁移

    增量数据迁移

    PolarDB-X 2.0迁移至RDS MySQL

    PolarDB MySQL

    所有版本

    库表结构迁移

    全量数据迁移

    增量数据迁移

    PolarDB-X 2.0迁移至PolarDB MySQL

    云原生数据仓库AnalyticDB MySQL版

    3.0版本

    库表结构迁移

    全量数据迁移

    增量数据迁移

    PolarDB-X 2.0迁移至AnalyticDB MySQL 3.0

    阿里云消息队列Kafka版

    0.10.1.0~2.x版本

    自建Kafka

    0.10.1.0~2.7.0版本

    库表结构迁移

    全量数据迁移

    增量数据迁移

    PolarDB-X 2.0迁移至阿里云消息队列Kafka

    DataHub

    所有版本

    库表结构迁移

    增量数据迁移

    文档准备中

    Elasticsearch

    5.5、5.6、6.3、6.7、7.4、7.10版本

    库表结构迁移

    全量数据迁移

    增量数据迁移

    文档准备中

源为PolarDB PostgreSQL的迁移方案

  • 新控制台
    源库 目标库 迁移类型 配置文档

    PolarDB PostgreSQL

    11版本

    PolarDB PostgreSQL

    11版本

    库表结构迁移

    全量数据迁移

    增量数据迁移

    文档准备中
  • 旧控制台
    源库 目标库 迁移类型 配置文档

    PolarDB PostgreSQL

    11版本

    自建Oracle(RAC或非RAC架构)

    9i、10g、11g、12c、18c、19c版本

    全量数据迁移

    增量数据迁移

    从PolarDB PostgreSQL迁移至自建Oracle

源为MaxCompute的迁移方案

说明 仅支持在旧版控制台进行配置。
源库 目标库 迁移类型 配置文档
MaxCompute

所有版本

  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

从MaxCompute迁移至RDS MySQL

源为Oracle的迁移方案

源库 目标库 迁移类型 配置文档

自建Oracle(RAC或非RAC架构)

9i、10g、11g、12c、18c、19c版本

PolarDB O引擎

所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:自建Oracle迁移至PolarDB O引擎(迁移数据)

自建Oracle(RAC或非RAC架构)

9i、10g、11g、12c、18c、19c版本

库表结构迁移

全量数据迁移

增量数据迁移

自建Oracle间迁移

RDS PPAS

9.3、10版本

库表结构迁移

全量数据迁移

增量数据迁移

从自建Oracle迁移至RDS PPAS
说明 仅支持在旧版控制台配置。
  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:自建Oracle迁移至RDS MySQL

旧控制台:从自建Oracle迁移至RDS MySQL

PolarDB MySQL

所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:自建Oracle迁移至PolarDB MySQL

旧控制台:从自建Oracle迁移至PolarDB MySQL

PolarDB PostgreSQL

11版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在旧版控制台配置。
PolarDB-X 1.0和2.0
说明
  • PolarDB-X 1.0中的数据库须基于RDS MySQL创建,DTS暂不支持基于PolarDB MySQL创建的数据库。
  • PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见版本升级

全量数据迁移

增量数据迁移

新控制台文档准备中

旧控制台文档:从自建Oracle迁移至PolarDB-X

说明 以PolarDB-X 1.0为目标的迁移方案暂未上线新版控制台,目前仅支持在旧版控制台配置。

云原生数据仓库AnalyticDB MySQL版

2.0、3.0版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在旧版控制台进行配置。

云原生数据仓库AnalyticDB PostgreSQL版

4.3、6.0版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台:自建Oracle迁移至AnalyticDB PostgreSQL

旧控制台:从自建Oracle迁移至云原生数据仓库AnalyticDB PostgreSQL

  • 自建PostgreSQL

    9.4.8及以上版本、9.5、9.6、10.x、11.x、12、13版本

  • RDS PostgreSQL

    9.4、10、11、12、13版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中

阿里云消息队列Kafka版

0.10.1.0~2.x版本

自建Kafka

0.10.1.0~2.7.0版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中

DataHub

所有版本

库表结构迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台进行配置。

源为自建PostgreSQL或RDS PostgreSQL的迁移方案

源库 目标库 迁移类型 配置文档
  • 自建PostgreSQL

    9.4.8及以上版本、9.5、9.6、10.x、11.x、12、13版本

  • RDS PostgreSQL

    9.4、10、11、12、13版本

  • 自建PostgreSQL

    9.4.8及以上版本、9.5、9.6、10.x、11.x、12、13版本

  • RDS PostgreSQL

    9.4、10、11、12、13版本

库表结构迁移

全量数据迁移

增量数据迁移

PolarDB PostgreSQL

11版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台进行配置。
  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

全量数据迁移

增量数据迁移

RDS PostgreSQL迁移至RDS MySQL
说明 仅支持在新版控制台进行配置。

PolarDB O引擎

所有版本

全量数据迁移

增量数据迁移

自建PostgreSQL迁移至PolarDB O引擎
说明 仅支持在新版控制台进行配置。

云原生数据仓库AnalyticDB PostgreSQL版

4.3、6.0版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台进行配置。

源为自建SQL Server或RDS SQL Server的迁移方案

说明
  • 如源自建SQL Server为2005版本或源RDS SQL Server为2008、2008R2时,则不支持增量数据迁移。
  • 暂不支持SQL Server Cluster或SQL Server AlwaysOn High Availability Group。
源库 目标库 迁移类型 配置文档
  • 自建SQL Server

    2005、2008、2008R2、2012、2014、2016、2017版本

  • RDS SQL Server

    2008、2008R2、2012、2014、2016、2017版本

  • 自建SQL Server

    2005、2008、2008R2、2012、2014、2016、2017版本

  • RDS SQL Server

    2008、2008R2、2012、2014、2016、2017版本

库表结构迁移

全量数据迁移

增量数据迁移

说明 如源自建SQL Server为2005版本或源RDS SQL Server为2008、2008R2时,则不支持增量数据迁移。
新控制台:自建SQL Server迁移至RDS SQL Server
  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台进行配置。

PolarDB MySQL

所有版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台进行配置。

云原生数据仓库AnalyticDB MySQL版

3.0版本

库表结构迁移

全量数据迁移

增量数据迁移

RDS SQL Server迁移至AnalyticDB MySQL版 3.0
说明 仅支持在新版控制台进行配置。

云原生数据仓库AnalyticDB PostgreSQL版

4.3、6.0版本

库表结构迁移

全量数据迁移

增量数据迁移

自建SQL Server迁移至AnalyticDB PostgreSQL
说明 仅支持在新版控制台进行配置。

源为自建MongoDB或云数据库MongoDB的迁移方案

源为自建Redis或云数据库Redis的迁移方案

说明
  • Redis属于NoSQL数据库,无需库表结构迁移。
  • 源库和目标库都不支持云盘版的云数据库Redis实例。
  • 源库不支持集群架构的云数据库Redis实例。
  • 新版控制台
    源库 目标库 迁移类型 配置文档
    • 自建Redis(单机或集群架构)

      2.8、3.0、3.2、4.0、5.0、6.0版本

    • 云数据库Redis社区版实例(标准架构或读写分离架构)

      4.0、5.0、6.0版本

    • 云数据库Redis企业版实例(标准架构或读写分离架构)

      5.0版本

    • 自建Redis(单机或集群架构)

      2.8、3.0、3.2、4.0、5.0、6.0版本

    • 云数据库Redis社区版实例(集群架构、标准架构或读写分离架构)

      4.0、5.0、6.0版本

    • 云数据库Redis企业版实例(集群架构、标准架构或读写分离架构)

      5.0版本

    全量数据迁移

    增量数据迁移

  • 旧版控制台
    源库 目标库 迁移类型 配置文档

    自建Redis(仅支持单机架构)

    2.8、3.0、3.2、4.0、5.0、6.0版本

    • 自建Redis(单机或集群架构)

      2.8、3.0、3.2、4.0、5.0、6.0版本

    • 云数据库Redis(标准或集群架构)

      社区版4.0、5.0、6.0版本

    全量数据迁移

    增量数据迁移

    从自建Redis迁移至阿里云Redis

源为TiDB的迁移方案

说明 仅支持在旧版控制台进行配置。
源库 目标库 迁移类型 配置文档
TiDB
  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

增量数据迁移

PolarDB MySQL

所有版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中

源为DB2 for LUW的迁移方案

源库 目标库 迁移类型 配置文档
DB2 for LUW

9.5、9.7、10.1、10.5、11.1、11.5版本

  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

增量数据迁移

新控制台文档准备中

旧版控制台:从自建Db2迁移至RDS MySQL

PolarDB-X 2.0
说明 PolarDB-X 2.0需兼容MySQL 5.7版本,且建议实例版本升级为5.4.11及以上,升级方式请参见版本升级

全量数据迁移

增量数据迁移

DB2 for LUW迁移至PolarDB-X 2.0
说明 仅支持在新版控制台进行配置。

云原生数据仓库AnalyticDB PostgreSQL版

4.3、6.0版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台进行配置。

阿里云消息队列Kafka版

0.10.1.0~2.x版本

自建Kafka

0.10.1.0~2.7.0版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中
说明 仅支持在新版控制台进行配置。

源为DB2 for i的迁移方案

源库 目标库 迁移类型 配置文档
DB2 for i

7.3、7.4版本

  • 自建MySQL

    5.1、5.5、5.6、5.7、8.0版本

  • RDS MySQL

    所有版本

库表结构迁移

全量数据迁移

增量数据迁移

文档准备中

源为Teradata的迁移方案

说明 目前仅支持在新控制台进行配置,且迁移实例需位于上海、青岛、张家口。
源库 目标库 迁移类型 配置文档
Teradata

17版本

云原生数据仓库AnalyticDB PostgreSQL版

4.3、6.0版本

库表结构迁移

全量数据迁移

Teradata迁移至AnalyticDB PostgreSQL

源为自建HBase的迁移方案

说明 目前仅支持在新控制台进行配置。
源库 目标库 迁移类型 配置文档
自建HBase

1.x版本

云原生数据仓库AnalyticDB MySQL版

3.0版本

库表结构迁移

全量数据迁移

自建HBase迁移至AnalyticDB MySQL 3.0

源为第三方云的迁移方案

DTS支持将第三方云(如Amazon RDS for MySQL、Amazon RDS for Oracle)中的数据迁移至阿里云产品(如RDS MySQL )中。

源库 目标库 迁移类型 配置文档
Amazon RDS for MySQL RDS MySQL

库表结构迁移

全量数据迁移

增量数据迁移

从Amazon RDS MySQL迁移至阿里云RDS MySQL
Amazon RDS for Oracle RDS MySQL

库表结构迁移

全量数据迁移

增量数据迁移

从Amazon RDS Oracle迁移至阿里云RDS MySQL
RDS PPAS

库表结构迁移

全量数据迁移

从Amazon RDS Oracle全量迁移至阿里云RDS PPAS
Amazon RDS for PostgreSQL RDS PostgreSQL

库表结构迁移

全量数据迁移

增量数据迁移

从Amazon RDS for PostgreSQL增量迁移至阿里云

库表结构迁移

全量数据迁移

从Amazon RDS for PostgreSQL全量迁移至阿里云
Amazon RDS for SQL Server RDS SQL Server

库表结构迁移

全量数据迁移

从Amazon RDS SQL Server全量迁移至阿里云
Amazon Aurora MySQL RDS MySQL

库表结构迁移

全量数据迁移

增量数据迁移

从Amazon Aurora MySQL迁移至阿里云
PolarDB MySQL

库表结构迁移

全量数据迁移

增量数据迁移

从Amazon Aurora MySQL迁移至PolarDB MySQL
Amazon Aurora PostgreSQL RDS PostgreSQL

库表结构迁移

全量数据迁移

从Amazon Aurora PostgreSQL全量迁移至阿里云
Atlas MongoDB 云数据库MongoDB

全量数据迁移

增量数据迁移

使用DTS将MongoDB Atlas数据库迁移至阿里云
华为云文档数据库 云数据库MongoDB

全量数据迁移

增量数据迁移

使用DTS将华为云文档数据库迁移至阿里云
腾讯云MySQL RDS MySQL

库表结构迁移

全量数据迁移

增量数据迁移

从腾讯云MySQL迁移至阿里云
腾讯云MongoDB 云数据库MongoDB

增量数据迁移

使用DTS将腾讯云MongoDB增量迁移至阿里云

全量数据迁移

使用DTS将腾讯云MongoDB副本集实例全量迁移至阿里云