DM增量同步慢,积压

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
非业务生产系统,zabbix监控数据库

【概述】 场景 + 问题概述
目前在做替换zabbix mariadb数据库的测试,全量同步导入后,用dm做增量导入,感觉追不上mariadb binlog的增加速度
【备份和数据迁移策略逻辑】
dumping全量导出,tidb-lightning全量导入,增量使用dm同步
【背景】 做过哪些操作

【现象】 业务和数据库现象

【问题】 当前遇到的问题
使用dm的 query-status ,查看secondsBehindMaster 越来越大
【业务影响】
目前只影响数据迁移
【TiDB 版本】
4.0.14
【附件】
[tidb@esbprddb ~]$ tiup dmctl --master-addr 192.168.0.207:8261 query-status task-zabbix1
Starting component dmctl: /home/tidb/.tiup/components/dmctl/v2.0.6/dmctl/dmctl --master-addr 192.168.0.207:8261 query-status task-zabbix1
{
“result”: true,
“msg”: “”,
“sources”: [
{
“result”: true,
“msg”: “”,
“sourceStatus”: {
“source”: “mysql-02”,
“worker”: “dm-192.168.0.217-8262”,
“result”: null,
“relayStatus”: null
},
“subTaskStatus”: [
{
“name”: “task-zabbix1”,
“stage”: “Running”,
“unit”: “Sync”,
“result”: null,
“unresolvedDDLLockID”: “”,
“sync”: {
“totalEvents”: “36287919”,
“totalTps”: “25732”,
“recentTps”: “266”,
“masterBinlog”: “(mysql-bin.000010, 31387250)”,
“masterBinlogGtid”: “0-2-1736599”,
“syncerBinlog”: “(mysql-bin.000009, 503420399)”,
“syncerBinlogGtid”: “”,
“blockingDDLs”: [
],
“unresolvedGroups”: [
],
“synced”: false,
“binlogType”: “remote”,
“secondsBehindMaster”: “12143”
}
}
]
}
]
}

[tidb@esbprddb ~]$ tiup cluster display tidb-zabbix
Starting component cluster: /home/tidb/.tiup/components/cluster/v1.5.6/tiup-cluster display tidb-zabbix
Cluster type: tidb
Cluster name: tidb-zabbix
Cluster version: v4.0.14
Deploy user: tidb
SSH type: builtin
Dashboard URL: http://192.168.0.207:14279/dashboard
ID Role Host Ports OS/Arch Status Data Dir Deploy Dir


192.168.0.207:9794 alertmanager 192.168.0.207 9794/9795 linux/x86_64 Up /data/tidb-data/alertmanager-9794 /data/tidb-deploy/alertmanager-9794
192.168.0.216:13545 grafana 192.168.0.216 13545 linux/x86_64 Up - /data/tidb-deploy/grafana-13545
192.168.0.207:14279 pd 192.168.0.207 14279/14289 linux/x86_64 Up|UI /data/tidb-data/pd-14279 /data/tidb-deploy/pd-14279
192.168.0.216:14279 pd 192.168.0.216 14279/14289 linux/x86_64 Up /data/tidb-data/pd-14279 /data/tidb-deploy/pd-14279
192.168.0.217:14279 pd 192.168.0.217 14279/14289 linux/x86_64 Up|L /data/tidb-data/pd-14279 /data/tidb-deploy/pd-14279
192.168.0.217:19597 prometheus 192.168.0.217 19597 linux/x86_64 Up /data/tidb-data/prometheus-19597 /data/tidb-deploy/prometheus-19597
192.168.0.207:4643 tidb 192.168.0.207 4643/14583 linux/x86_64 Up - /data/tidb-deploy/tidb-4643
192.168.0.216:4643 tidb 192.168.0.216 4643/14583 linux/x86_64 Up - /data/tidb-deploy/tidb-4643
192.168.0.217:4643 tidb 192.168.0.217 4643/14583 linux/x86_64 Up - /data/tidb-deploy/tidb-4643
192.168.0.207:43641 tikv 192.168.0.207 43641/43644 linux/x86_64 Up /data/tidb-data/tikv-43641 /data/tidb-deploy/tikv-43641
192.168.0.216:43641 tikv 192.168.0.216 43641/43644 linux/x86_64 Up /data/tidb-data/tikv-43641 /data/tidb-deploy/tikv-43641
192.168.0.217:43641 tikv 192.168.0.217 43641/43644 linux/x86_64 Up /data/tidb-data/tikv-43641 /data/tidb-deploy/tikv-43641
Total nodes: 12

task


若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

没有看到 DM 的版本,如果 DM 版本 >=2.0.5,可以拿一下 DM 的监控,DM 2.0.5 版本之后增加了很多延迟相关的监控项。

可以初步判断下是 DM 同步慢,还是下游 TiDB 消费慢。下游 TiDB 的拓扑和监控最好也提供下。
另外可以还可以确认下 DM 是否有开启 relay_log,如果开启了可以关闭,减少落盘的时间~


是负载太高了吗?我没太看明白那个地方是关键的瓶颈点

看到您配置了跳过 table schema 检查。如果是上游无主键或者唯一索引的话会没法并发同步,导致同步速度慢

1 个赞

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