Dumpling 导出大表时报 GC 超时错误

【 TiDB 使用环境】生产环境
【 TiDB 版本】v6.4.0
【复现路径】

  1. 使用Dumpling工具导出100G级别大表数据
  2. 单次导出任务执行时长超过8小时
  3. 未提前调整 tidb_gc_life_time 全局参数
    【遇到的问题:问题现象及影响】
    导出中途报错 GC life time is shorter than transaction duration,数据导出任务失败,无法完成数据归档、离线迁移工作。
    【资源配置】
    TiDB节点×4、TiKV节点×8

100G也不大啊,调整导出并发度看看能不能快点,gc时间改24H

100G的数据量不应该这么久啊,理论上不超过1小时的。你的dumpling完整命令是啥,贴出来,可以在命令中加 -t 4参数(导出的线程数,提高导出速度,但也会加大数据库内存消耗,因此不宜设置过大,默认值:4,可以根据自己的服务器配置来定)

长导出事务时长超出 GC 保留时间导致任务失败,先临时调大tidb_gc_life_time,配合--rows分片导出提速,完成后恢复原配置,频繁备份建议改用 BR。

导出属于长事务,超出tidb_gc_life_time默认保留时长

2 个赞

分库分表迁移注意全局唯一ID生成方式。

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。