【 TiDB 使用环境】生产环境
【 TiDB 版本】v6.4.0
【复现路径】
- 使用Dumpling工具导出100G级别大表数据
- 单次导出任务执行时长超过8小时
- 未提前调整 tidb_gc_life_time 全局参数
【遇到的问题:问题现象及影响】
导出中途报错 GC life time is shorter than transaction duration,数据导出任务失败,无法完成数据归档、离线迁移工作。
【资源配置】
TiDB节点×4、TiKV节点×8
【 TiDB 使用环境】生产环境
【 TiDB 版本】v6.4.0
【复现路径】
100G也不大啊,调整导出并发度看看能不能快点,gc时间改24H
100G的数据量不应该这么久啊,理论上不超过1小时的。你的dumpling完整命令是啥,贴出来,可以在命令中加 -t 4参数(导出的线程数,提高导出速度,但也会加大数据库内存消耗,因此不宜设置过大,默认值:4,可以根据自己的服务器配置来定)
长导出事务时长超出 GC 保留时间导致任务失败,先临时调大tidb_gc_life_time,配合--rows分片导出提速,完成后恢复原配置,频繁备份建议改用 BR。
导出属于长事务,超出tidb_gc_life_time默认保留时长
分库分表迁移注意全局唯一ID生成方式。
此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。