操作场景
迁移任务启动后,如果遇到异常情况导致任务中断,用户可以进行手动重试,不需要从头重新拉取数据。
全量阶段:全量阶段基于分块(chunk)导出/导入机制,每个分块会进行标记,任务重新启动后,DTS 识别中断的分块位置,然后从未同步的分块位置继续同步数据。
增量阶段:增量阶段基于 Checkpoint 机制,DTS 解析源库的 Binlog 再写入目标端时,一般每10秒会插入一个 Checkpoint 消息,用来标识数据同步的位点,任务重新启动后,DTS 从中断的位点继续同步数据。
数据迁移场景支持重试的情况如下:
链路 | 支持场景 | 说明 |
MySQL/TDSQL-C MySQL/MariaDB/Percona 相互之间的迁移链路 | 全量导出 全量导入 同步增量 | 全量导出的说明如下: 无锁导出并且源库待迁移表有主键的场景,支持重试。 有锁导出的场景,在锁库之前,如果由于源实例存在耗时较长的 SQL 运行,导致锁库失败任务异常中断,支持重试,其他场景不支持重试。 |
MySQL/TDSQL-C MySQL/MariaDB/Percona/TDSQL MySQL 与 TDSQL MySQL 之间的迁移链路 | 同步增量 | - |
适用范围
MySQL/TDSQL-C MySQL/MariaDB/Percona/TDSQL MySQL 之间的数据迁移链路支持重试。