TIDB512张分表数据合并到合表

现在再TIDB有512张分表,现在我们需要将这512张分表的数据再TIDB上建立一张合表 然后将这512张分表的数据合并到这张合并中,类似于阿里mysql同步时候用的DTS/DATAX,想知道TIDB有这种工具吗?目前TIDB版本8.5

用 dumpling和lightning 导一下全量,记下来 tso,增量用 cdc
https://docs.pingcap.com/zh/tidb/stable/tidb-lightning-data-source/#表库重命名

使用如下命令试试呢:

INSERT INTO 目标合表 SELECT * FROM 分表_001;
INSERT INTO 目标合表 SELECT * FROM 分表_002;
– …以此类推

需要实时同步吗,可以停机还是导出在导入快点

需要增量数据吗

用 dumpling和lightning 这两个工具

dumpling 导出所有分表数据为 SQL/CSV,再用 lightning 并行导入合表,性能最高,支持断点续传,适合大数据量。

优先用 Dumpling+Lightning 做全量合并,增量同步用 TiCDC+Flink,小数据量可直接用 SQL 脚本批量插入。

先备份一下呗,这样就不怕错了。

优先用 Dumpling+Lightning 做全量合并

同上 :100:

数据量是多大?从分表到合表,是不是有逻辑映射?

只是一个union吗

使用导出导入吧

可以使用Dumpling+Lightning

dumpling和lightning

可以尝试用dm全量导入

如果数据量比较大,通过主键分批插入

Dumpling 批量导出,Lightning 并行入库,高性能带断点续传,适配海量分表合并。