环境信息
canal version 1.1.2 mysql version 5.7
问题描述
运行一段时间后,连接mysql出现socket timeout,重新创建MysqlConnector,使用InetSocketAddress.getHostString()再构造InetSocketAddress,在服务器有多个网卡的情况下,构造出来的address可能会是另外一个地址,导致连接不上mysql。这里为什么不直接使用传进来的address?
public MysqlConnector(InetSocketAddress address, String username, String password){
String addr = address.getHostString();
int port = address.getPort();
this.address = new InetSocketAddress(addr, port);
this.username = username;
this.password = password;
}
原提问者GitHub用户sosozhuang
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。