【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】TIDB DM分库分表同步,只能变部分部分表,然后卡就住了
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
看看日志里有什么报错信息或其他信息,数据库空间是足够
我不太明白这是什么意思啊?有上游有部分表变更了,所以同步卡住了?
1. 查看 DM 同步任务的状态
- 执行
SHOW DM JOBS;
查看同步任务的状态,检查是否存在卡住的任务。 - 查看同步表的进度,是否同步某些表时一直停滞。
2. 检查 TiDB DM 配置
- 查看 DM 任务的配置,检查是否合理配置了同步的并发度,例如
worker-count
和batch-size
。 - 确保
task-config.yaml
中的配置符合业务需求,特别是针对不同类型的表进行合理配置。
3. 查看 TiDB 和 TiKV 资源使用情况
- 进入 TiDB Dashboard,查看主机资源配置以及 TiDB 和 TiKV 节点的 CPU、内存使用情况。
- 确保 TiDB 集群没有资源瓶颈,特别是磁盘 IO,可能会导致同步任务卡住。
4. 检查 DM 工作节点和 TiDB 之间的网络连接
- 如果 DM Worker 节点和 TiDB 节点之间的网络连接不稳定,可能导致同步任务超时或失败。
- 查看 DM 的网络延迟,特别是数据同步时是否存在高延迟。
5. 日志分析
- 查看 DM Worker 和 TiDB 的日志文件,寻找是否有异常信息、错误堆栈、连接超时等问题。
- TiDB 和 DM 的错误日志可以帮助找到资源瓶颈、任务超时或其他故障的根本原因。
6. DM 任务的负载和并发度
- DM 同步任务需要合理的负载和并发度设置,如果配置过低,可能导致同步效率低,任务执行时间过长。
- 调整
dm-worker
的并发参数,尝试增加并行度,减少单个任务的阻塞。
7. 资源扩展
- 如果系统资源紧张,可以考虑扩展 TiDB 或 DM 节点,增加更多的计算资源或存储容量,保证同步任务能够顺利完成。
1 个赞
啥都没怎么分析啊
1 个赞
你这分表的表结构应该一致才对的吧?
多说两句,也好分析些