tidbtidb在使用binlog开启双向同步时 上游数据库drainer组件报错

tidb在使用binlog开启双向同步时 上游数据库drainer组件报错

【附件】
[FATAL] [main.go:50] [“create drainer server failed”] [error=“initialize tidb type checkpoint with config &{CheckpointType:tidb Db:0xc000624640 Schema:tidb_binlog Table:checkpoint ClusterID:6992478215125974120 InitialCommitTS:0 CheckPointFile:/home/tidb-data/drainer-18249/savepoint}: open db failed: dial tcp : connect: no route to host”] [errorVerbose=“dial tcp : connect: no route to host\ngithub.com/pingcap/errors.AddStack\n\t/go/pkg/mod/github.com/pingcap/errors@v0.11.5-0.20201126102027-b0a155152ca3/errors.go:174\ngithub.com/pingcap/errors.Trace\n\t/go/pkg/mod/github.com/pingcap/errors@v0.11.5-0.20201126102027-b0a155152ca3/juju_adaptor.go:15\ngithub.com/pingcap/tidb-binlog/pkg/loader.createDBWitSessions\n\t/home/jenkins/agent/workspace/optimization-build-tidb-linux-amd/go/src/github.com/pingcap/tidb-binlog/pkg/loader/util.go:121\ngithub.com/pingcap/tidb-binlog/pkg/loader.CreateDBWithSQLMode\n\t/home/jenkins/agent/workspace/optimization-build-tidb-linux-amd/go/src/github.com/pingcap/tidb-binlog/pkg/loader/util.go:164\ngithub.com/pingcap/tidb-binlog/pkg/loader.CreateDB\n\t/home/jenkins/agent/workspace/optimization-build-tidb-linux-amd/go/src/github.com/pingcap/tidb-binlog/pkg/loader/util.go:169\ngithub.com/pingcap/tidb-binlog/drainer/checkpoint.newMysql\n\t/home/jenkins/agent/workspace/optimization-build-tidb-linux-amd/go/src/github.com/pingcap/tidb-binlog/drainer/checkpoint/mysql.go:61\ngithub.com/pingcap/tidb-binlog/drainer/checkpoint.NewCheckPoint\n\t/home/jenkins/agent/workspace/optimization-build-tidb-linux-amd/go/src/github.com/pingcap/tidb-binlog/drainer/checkpoint/checkpoint.go:57\ngithub.com/pingcap/tidb-binlog/drainer.NewServer\n\t/home/jenkins/agent/workspace/optimization-build-tidb-linux-amd/go/src/github.com/pingcap/tidb-binlog/drainer/server.go:142\nmain.main\n\t/home/jenkins/agent/workspace/optimization-build-tidb-linux-amd/go/src/github.com/pingcap/tidb-binlog/cmd/drainer/main.go:48\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:203\nruntime.goexit\n\t/usr/local/go/src/runtime/asm_amd64.s:1357\nopen db failed\ninitialize tidb type checkpoint with config &{CheckpointType:tidb Db:0xc000624640 Schema:tidb_binlog Table:checkpoint ClusterID:6992478215125974120 InitialCommitTS:0 CheckPointFile:/home/tidb-data/drainer-18249/savepoint}”] [stack=“main.main\n\t/home/jenkins/agent/workspace/optimization-build-tidb-linux-amd/go/src/github.com/pingcap/tidb-binlog/cmd/drainer/main.go:50\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:203”]

1赞

hi,请补充你的版本,以及相关的集群状态,拓扑结构,以及操作过程

从你提供的日志来看,DB的状态不对,直接无法open,而且无法识别主机?
ClusterID:6992478215125974120 InitialCommitTS:0 CheckPointFile:/home/tidb-data/drainer-18249/savepoint}: open db failed: dial tcp : connect: no route to host”] [errorVerbose=“dial tcp : connect: no route to

1赞

用的TIDB v4.0.12版本 集群重新创建了一下
![image|690x307](upload://uXGYox0eaMsOZ6O5oLsWa 标识表byoD97.png)
这个 标识表应该放在那个库下面,这2个问号应该写什么值 只在上游数据库创建 还是下游也要创建

1赞

这是个什么图… :sweat_smile:

1赞

我重新上传一下

1赞

连接后TiDB 集群已开始运行, pump 读取集群中的 binlog 数据,并在其数据目录中将 binlog 数据存储为 relay log。下一步是启动一个可供 drainer 写入的 MariaDB Server。

如下表格是包含 checkpoint 表格的 tidb_binlog 数据库。 drainer 使用 checkpoint 表格,记录 TiDB 集群中的 binlog 已经更新到了哪个位置。

明显是对应的下游了

1赞

那这2个问号分别给于什么值 那这个 标识表不用手动创建 还是要手动创建

1赞

我要开启双向同步数据 不是单方向同步 所以这2个问号分别给于什么值

你按文档上的步骤来操作啊

https://docs.pingcap.com/zh/tidb/stable/get-started-with-tidb-binlog


如果你的配置信息是后添加的,检查没有自动生成 tidb_binlog 这个 database,明显就需要重载一下配置信息,让draniner 初始化完成

你看一下这个 这不是让创建个标识表 我的意思这个表放在那里 还是binlog这个库会自己创建

1赞

这是往下游同步数据的log 下游tidb数据库我已手动创建

1赞


环境问题吧…

1赞

可以提醒一下不 从哪方面排查 这个表我查了 有

1赞

我把双向同步开启以后 配置并开启双向同步以后


上下游数据库报错如下:

麻烦提供一下从 drainer 部署到启动报错完整的的日志 drainer.log

drainer log 么有报错 这是log

现在 drainer 同步都正常了么

不正常 drainer还是down