ticdc 创建同步任务报连接mysql超时

【 TiDB 使用环境】poc
【 TiDB 版本】6.5.2
【复现路径】
【遇到的问题:问题现象及影响】
场景:
tidb数据同步到MySQL
脚本:
/home/tidb/deploy/cdc-8300/bin/cdc cli changefeed create --server=http://10.138.xx.xx:8300 --sink-uri=“mysql://dba:123456@10.128.xx.xx:3316/?TZ=Asia/Shanghai” --config=“/data1/tidb/cdc-8300/conf/oneid_e_participation_record.cnf” --changefeed-id=“c-test-task”

现象
创建同步任务时,报连接mysql 超时
Error: [CDC:ErrMySQLConnectionError]fail to open MySQL connection: dial tcp 10.128.xx.xx:3316: i/o timeout

是不是开防火墙了?账号密码对么?手工连接能连接上么?

1 个赞

建同步任务时报连接MySQL超时的错误。这可能是由于以下原因导致的:

  1. 网络连接问题:请确保TiDB和MySQL之间的网络连接正常。您可以尝试使用其他工具(如MySQL客户端)连接到MySQL服务器,验证连接是否正常。还可以检查防火墙设置,确保TiDB服务器可以访问MySQL服务器的3316端口。
  2. MySQL服务器配置问题:请确保MySQL服务器的配置允许来自TiDB服务器的连接。您可以检查MySQL的配置文件(通常是my.cnf或my.ini),查看是否有限制连接的设置,例如max_connections等。
  3. MySQL服务器负载过高:如果MySQL服务器的负载过高,可能会导致连接超时。您可以检查MySQL服务器的负载情况,例如CPU使用率、内存使用率等。如果负载过高,可以尝试优化MySQL服务器的配置或增加硬件资源。
  4. 防火墙或安全组设置:请确保TiDB服务器和MySQL服务器之间的防火墙或安全组设置允许通信。您可以检查防火墙或安全组规则,确保允许TiDB服务器访问MySQL服务器的3316端口。

看报错是网络不通,请确保所有ticdc节点可以连接到下游mysql

手动连接没问题,现在就确认从ticdc 服务器访问mysql看行不行

手工测试是在cdc运行的机器上测试的连接吗

用这个账号和密码,在每个 TiCDC 节点的机器上手动mysql去连接下游数据库,验证访问情况,复现问题后就好解决了。

手动连接一下看看有没有报错

cdc服务器上telnet mysql服务器ip+端口看看通不通

已解决
mysql密码有特殊字符,uri 编码后创建成功

:handshake: :handshake: :handshake:

1 个赞

手动链接一下

:point_up_2:手动连接过了,看上上面的最佳答案 :yum:

1 个赞

MYSQL连接造成的

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