tidb连接报ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx' (111)错误

求助,如图,tidb增加参数–enable-binlog=true重启后报111错误

需要查看什么日志都可以提供

tidb错误日志,需要什么设置

分析原因:
开启 enable-binlog 是需要配合 pump 服务一同开启的
解决办法:
开启 pump 服务,或者关掉 enable-binlog 。
建议看一下 TiDB-binlog 教程
https://pingcap.com/docs-cn/v2.1/how-to/get-started/tidb-binlog/
TiDB-binlog 部署
https://pingcap.com/docs-cn/v2.1/how-to/deploy/tidb-binlog/

老师您好,我是通过docker-swarm方式部署的,按理说pump如果不开启的话tidb不会正常启动,swarm会将失败的tidb重新启动,这样也能保证了启动顺序,您能帮我看看swarm文件是否哪里配置不合适吗

业务方需要这个binlog文件做操作,这个还是需要开启


tikv日志

关掉enable-binlog后是正常,开启后就出现111错误

请关注一下文档最后的注意事项:
https://pingcap.com/docs-cn/v2.1/how-to/deploy/tidb-binlog/

老师您好,问题应该是pump跟drainer的连接问题,drainer一直报错,日志如图


这种可能原因是什么

[ERROR] [pump.go:135] [“pump create pull binlogs client failed”] [id=pump1] [error=“rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection error: desc = “transport: Error while dialing dial tcp: lookup 7cc901663ec3 on 127.0.0.11:53: no such host””] [errorVerbose=“rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection error: desc = “transport: Error while dialing dial tcp: lookup 7cc901663ec3 on 127.0.0.11:53: no such host”
github.com/pingcap/errors.AddStack
/home/jenkins/workspace/build_tidb_binlog_master/go/pkg/mod/github.com/pingcap/errors@v0.11.4/errors.go:174
github.com/pingcap/errors.Trace
/home/jenkins/workspace/build_tidb_binlog_master/go/pkg/mod/github.com/pingcap/errors@v0.11.4/juju_adaptor.go:15
github.com/pingcap/tidb-binlog/drainer.(*Pump).createPullBinlogsClient
/home/jenkins/workspace/build_tidb_binlog_master/go/src/github.com/pingcap/tidb-binlog/drainer/pump.go:221
github.com/pingcap/tidb-binlog/drainer.(*Pump).PullBinlog.func1
/home/jenkins/workspace/build_tidb_binlog_master/go/src/github.com/pingcap/tidb-binlog/drainer/pump.go:134
runtime.goexit
/usr/local/go/src/runtime/asm_amd64.s:1337”]

pump配置:
entrypoint: [“/bin/sh”,“-c”,“/pump --addr=0.0.0.0:8250 --advertise-addr=$$HOSTNAME:8250 --data-dir=/data/pump$$TASK_SLOT --log-file=/logs/pump$$TASK_SLOT.log --node-id=pump$$TASK_SLOT --pd-urls=http://pd0:2379,http://pd1:2379,http://pd2:2379 --config=/pump.toml”]

drainer配置:
entrypoint: [“/bin/sh”, “-c”, “/drainer --addr=0.0.0.0:8249 --data-dir=/data/data.drainer --log-file=/logs/drainer.log --pd-urls=http://pd0:2379,http://pd1:2379,http://pd2:2379 --config=/drainer.toml --initial-commit-ts=0 --dest-db-type=file”]

tidb配置:
entrypoint: [ “/bin/sh”, “-c”, “/tidb-server --store=tikv --enable-binlog=true --path=pd0:2379,pd1:2379,pd2:2379 --config=/tidb.toml --log-file=/logs/tidb$$TASK_SLOT.log -L info” ]

请把 pump ,diraner 同时间段的日志都上传下吧,谢谢~

pump1.log (3.8 MB)

drainer.log (22.9 KB)

你看下当前使用的 tidb-binlog 镜像的版本具体是什么

v2.1.16

1、从 pump 日志可以看到当前的版本是 3.0.4

2、从 drainer 日志可以见,下述报错,请检查 docker 映射的 ip 地址是否正确:

3、在生产环境,暂不建议使用 docker 部署 tools 相关工具

您好,tidb部署也是目前用的docker,当前条件再换用ansible有点急,这个是因为版本的问题吗,这个host需要怎么配置

在mysql查看binlog状态是正常的,一插入数据就会报111错误


tidb错误日志如下