dm无法提交task,context deadline exceeded

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】

【概述】 场景 + 问题概述

订阅mysql 8.0

【备份和数据迁移策略逻辑】

【背景】 做过哪些操作

暂停在运行的DM任务,重新提交。

【问题】 当前遇到的问题

遇到无法提交的问题。

【业务影响】

【TiDB 版本】

tidb: 5.7.25-TiDB-v5.1.1
dm: v2.0.6

【附件】

dm-work 日志。

[2021/11/22 18:30:13.699 +08:00] [INFO] [rollback.go:59] [“rolling back”] [functon=close-DBs] [onwer=syncer]
[2021/11/22 18:30:13.701 +08:00] [INFO] [loader.go:787] [“stop importing data process”] [task=task-prod-qiqiao-plus2] [unit=load]
[2021/11/22 18:30:13.701 +08:00] [ERROR] [subtask.go:198] [“fail to initial subtask”] [subtask=task-prod-qiqiao-plus2] [error="[code=10001:class=database:scope=downstream:level=high], Message: fail to initial unit Sync of subtask task-prod-qiqiao-plus2 : database driver error, RawCause: context deadline exceeded, Workaround: Please check the database connection and the database config in configuration file."]
[2021/11/22 18:30:14.283 +08:00] [INFO] [server.go:753] [request=QueryStatus] [payload=]
[2021/11/22 18:30:14.379 +08:00] [INFO] [server.go:753] [request=QueryStatus] [payload=“name:“task-prod-qiqiao-plus2” “]
[2021/11/22 18:30:14.480 +08:00] [INFO] [server.go:917] [request=HandleError] [payload=“op:Skip task:“task-prod-qiqiao-plus2” “]
[2021/11/22 18:31:08.375 +08:00] [INFO] [printer.go:54] [“Welcome to dm-worker”] [“Release Version”=v2.0.6] [“Git Commit Hash”=d2051ed75511e069a512f54fce25a02f6d5a73fd] [“Git Branch”=release-2.0.6] [“UTC Build Time”=“2021-08-24 13:39:12”] [“Go Version”=“go version go1.16 linux/amd64”]
[2021/11/22 18:31:08.376 +08:00] [INFO] [main.go:65] [“dm-worker config”=”{“name”:“dm-worker-4”,“log-level”:“info”,“log-file”:”/home/tidb/log/dm-worker-4.log”,“log-format”:“text”,“log-rotate”:”",“join”:“http://127.0.0.1:8261”,“worker-addr”:“0.0.0.0:8274”,“advertise-addr”:“127.0.0.1:8274”,“config-file”:"/dm/conf/dm-worker-4.toml",“keepalive-ttl”:60,“relay-keepalive-ttl”:1800,“ssl-ca”:"",“ssl-cert”:"",“ssl-key”:"",“cert-allowed-cn”:null}"]
[2021/11/22 18:31:08.379 +08:00] [INFO] [server.go:93] [“starting dm-worker server”]
[2021/11/22 18:31:08.380 +08:00] [INFO] [join.go:93] [“start to keepalive with master”]
[2021/11/22 18:31:08.382 +08:00] [INFO] [server.go:287] [“will sync endpoints to”] [“client URLs”="[http://127.0.0.1:8261]"]
[2021/11/22 18:31:08.384 +08:00] [INFO] [server.go:235] [“listening gRPC API and status request”] [address=0.0.0.0:8274]

task.yaml

name: task-xxx-xxx-plus2
task-mode: all
ignore-checking-items: [“all”]
clean-dump-file: false

target-database:
host: “xx.xx.xx.xx”
port: 4000
user: “xxx-dm”
password: “xxxxxxxx”

mysql-instances:

  • source-id: “mysql8-xxxx-plus2”
    block-allow-list: “bw-rule”
    route-rules: [“route-rule-1”]
    loader-thread: 16
    mydumper-thread: 16
    syncer-thread: 16
    syncer-config-name: “global”

syncers:
global:
safe-mode: true # 当需要新增租户同步时,设置为true

routes:
route-rule-1:
schema-pattern: “xxxx-runtime”
target-schema: “xxx-runtime-xxx”

block-allow-list:
bw-rule:
do-dbs: [“xxx-runtime”]
do-tables:
- db-name: “xxx-runtime”
tbl-name: “~^f._ad340$"
- db-name: “xxx-runtime”
tbl-name: "~^f.
_zf750$”
- db-name: “xxx-runtime”
tbl-name: “~^f._185c0$"
- db-name: “xxx-runtime”
tbl-name: "~^f.
_5dbd0$”
- db-name: “xxx-runtime”
tbl-name: “~^f._1aae0$"
- db-name: “xxx-runtime”
tbl-name: "~^f.
_703a0$”
- db-name: “xxx-runtime”
tbl-name: “~^f._a40f0$"
- db-name: “bpms-runtime”
tbl-name: "~^f.
_f9c10$”
- db-name: “xxx-runtime”
tbl-name: “~^f._66680$"
- db-name: “xxx-runtime”
tbl-name: "~^f.
_z3f60$”
- db-name: “xxx-runtime”
tbl-name: “~^f._9a6e0$"
- db-name: “xxx-runtime”
tbl-name: "~^f.
_z1190$”
- db-name: “xxx-runtime”
tbl-name: “~^f._bfe70$"
- db-name: “xxx-runtime”
tbl-name: "~^f.
_1ea00$”
- db-name: “xxx-runtime”
tbl-name: “~^f._32ad0$"
- db-name: “xxx-runtime”
tbl-name: "~^f.
_d47a0$”


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

https://docs.pingcap.com/zh/tidb-data-migration/stable/scenarios#变更-dm-连接的上游-mysql-实例

参考看看

上游实例是正常的,因为有另外两个task正常提交运行了,是同一个上游实例(连接信息一致)。

在dm上用指定的账号密码手动连接下游tidb,确认网络 、账号权限是否都是OK的。

移除了 无用的 block-allow-list 规则后。现在提交正常了。就是提交很慢 。


不确定是不是mysql 8.0 版本的问题,报错内容提示有database drivers error

1赞