Ubuntu能ping通但telnet 3306 mysql端口失败

问题描述

提示:本文的场景是云服务器上,如果是自己的本地电脑和mysql连接也适用。

背景:两台云服务器在同一个VPC下,同一个安全组下,A能ping通B,但telnet 3306 mysql端口失败。

解决思路和方法:

  1. 首先看网络通不通,如果不通,请检查路由设置。因为我这里是云服务器的场景,直接查看安全组下是否放行了3306端口。(VPC 内云主机网络互通,所以这里只看安全组就可以,默认可以ping通。)
    在这里插入图片描述

    安全组入站规则设置:
    源IP(发起连接的一方)   TCP:3306,23     允许
    
  2. 设置安全组后,telnet 3306 mysql端口还是失败

    telnet  远端主机的ip  3306
    

    在这里插入图片描述

  3. 网络通了后,还是telnet 3306 mysql端口失败,则检查目的主机的防火墙是否关闭,3306端口是否开启。(可见防火墙是关闭的。)
    可见已经关闭的
    使用下面命令查看3306端口是否对外放开,如果显示的是127.0.0.1:3306
    说明3306只绑定了127.0.0.1(localhost),并没有绑定其他地址。
    在这里插入图片描述

  4. 修改mysql的配置文件
    vim /etc/mysql/mysql.conf.d/mysqld.cnf

    在bind-address =127.0.0.1前加入#注释掉,如图所示:
    在这里插入图片描述

  5. 使用命令重启mysql后,再次查看端口,可见3306绑定了任意地址

    service mysql restart
    

    在这里插入图片描述

  6. 再次telnet连接成功:

    telnet  远端主机的ip  3306
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值