数据迁移问题

DTS支持哪几类数据迁移?

  • DTS支持的迁移类型包括:结构迁移、全量数据迁移和增量数据迁移三种。
  • DTS支持迁移的源库包括有公网IP的外网自建数据库、BCC自建数据库及RDS实例;目标库可以为BCC自建数据库和RDS实例。

DTS结构迁移会迁移哪些内容?

目前DTS结构迁移只支持迁移表、视图,暂不支持存储过程、触发器、自定义函数的迁移。

DTS增量迁移的原理是什么,如何保证增量实时迁移?

增量数据迁移是将源库迁移过程中新增的数据实时同步到目标库中。如果创建数据迁移任务时,同时选择了全量数据迁移和增量数据迁移,则迁移过程中会先将源库中静态数据迁移到目标库,然后将增量数据同步到目标库。

DTS迁移过程中对源数据库是否有影响,是否会删除源库中数据?

DTS迁移实际上是复制了源数据库的数据,不会删除源库中数据,不会对源库数据有任何影响。 如果用户同时选择了全量数据迁移和增量数据迁移,为了保证迁移数据的一致性,DTS会对源库中非事务且无主键的表加上只读锁,等迁移完成后释放只读锁。迁移期间,上只读锁的表不能写入,其他表不受影响。

DTS迁移过程中,对于BCC自建数据库或RDS实例走内网还是外网?

迁移过程中,BCC自建数据库和RDS实例不论是否跨区域,都走内网,不需要公网流量。

DTS迁移过程中,是否支持DDL操作?

支持迁移过程中对源库执行DDL操作,但不支持短时间内的连续DDL操作,如1分钟内连续2次以上DDL操作。

DTS是否支持VPC内的BCC自建数据库或RDS实例的数据迁移?

支持,但需要走公网,所以BCC自建数据库或RDS实例需要有公网IP。

同一个账号下的两个RDS实例下的不同数据库,能否进行数据迁移?

可以,DTS支持库表映射功能,可以实现不同RDS实例下不同库名的数据库间的数据迁移。

DTS迁移过程中,是否会覆盖目标库中同名的表数据?

不会。DTS迁移前会执行检查,如果目标库中存在同名的表则不能执行该任务。但如果迁移过程中源库写入了同名的数据库后,迁移后会覆盖目标库中的数据,所以迁移过程中需谨慎写入源库数据。

用户进行数据迁移前,为什么会提示需要以下权限:["SELECT","LOCK TABLES","REPLICATION CLIENT"]?

因为没有对迁移帐号做相关授权。

  • 如果是百度RDS之间的迁移,迁移账号需要对迁移的对象有读权限或写权限。
  • 如果是公网或自建的,就需要迁移账号有相关权限,权限可以通过手工grant或通过控制台操作。