为什么3306端口已经开放了,远程连接mysql依旧连接不上??

问题:
远程主机端口已经开放,并且本机可以ping同远程主机,也就是连接没问题。

clipboard.png

但是在本机上看不到远程主机3306端口已经开放了,这是为什么?

测试如下:

clipboard.png

使用navicat连接也连接不上10038错误

感谢各位解答

=====================
补充问题2:
linux远程主机上ifconfig 看到的是内网ip ,却看不到公网ip,这是为何??

clipboard.png

只能够看到内网ip,看不到公网ip


解决办法:
谢谢各位的解答,dryyun和SAMPAN给出了解决办法,确实是阿里的安全组的问题
参考链接
https://www.alibabacloud.com/...
https://www.bt.cn/bbs/thread-...

阅读 10.1k
5 个回答

能 ping 通,至少证明 ping 的 ip 是对的。
那么先关闭远程主机的防火墙,看看 能不能连 mysql

如果机器只能看到内网的IP, 那么就说明了, 你的公网IP是你的ISP服务商的另外一台外网服务器转发的.

最好是联系你的服务器供应商, 看看是不是网络有特殊的限制.

但是有可能你的服务商是限制了一些特殊的服务端口的访问, 其实直接开放通用端口并不是一个合适的做法, 还是建议通过SSH的端口映射, 把本地的端口映射到远程的客户端机器上, 或者是通过VPN, 外部的机器先通过VPN连接服务器后再通过内网VPN的内网地址来访问服务, 这样会让你的服务器更加的安全.

首先试试, 把你的mysql服务器的端口设置为其他的端口, 例如12345等这些大端口.

mysql远程帐号需要授权

create user 'abc'@'114.2.2.2' IDENTIFIED by 'abc8534535433';
grant all on db-name.* to 'abc'@'114.2.2.2';

如果是阿里云,看看安全组的配置。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题