mysql无法远程连接的问题

找了一个开源客户端工具 dbeaver 远程连 数据库 怎么都连不上 都提示

CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
  java.net.ConnectException: ConnectException: Connection refused: connect

 换了一次 mysql的驱动 任然没有用
后来发现提示语里有这句   应该是服务器拒绝了  应该去服务器上配置

Connection refused: connect

 数据库 mysql的远程配置  grant 配置好了 刷新规则了  任然被拒绝 
反复检查grant的语法  认为不是 mysql授权的问题  

最后检查防火墙  windows的 防火墙关掉了

iptables  仔细验证规则了 还是不行 
最后 直接  iptables -F 了   清空了所有规则 依然被拒绝

后来百度到 说阿里云有外部的端口规则限制,查了半天又没查到  好无奈

最后回头看端口  netstat -an |grep  LIS   看了一下 发现点猫腻

tcp        0      0 127.0.0.1:3306             0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:21                 0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22                 0.0.0.0:*               LISTEN     

 3306的监听端口与其他服务不一样  
仔细想想 这应该是 mysql 启动的时候指定的啊 
于是找mysql的配置文件  my.cny
里面果然发现一条配置

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 127.0.0.1

 果断改成 0.0.0.0  重启服务 

终于不 Connection refused: connect  了 
折腾了两个小时

posted on 2016-03-13 13:09  uling  阅读(1150)  评论(0)    收藏  举报

导航