【问题标题】:MySQL connectivity from an external network with java使用 java 从外部网络连接 MySQL
【发布时间】:2015-08-24 13:26:01
【问题描述】:

大家好,我正在尝试从我朋友的 wifi 连接 mysql 数据库。数据库与我所有其他设备都在同一个网络上连接并正常工作,但我想从外部网络(我的朋友网络)连接到数据库。

我已将 localhost/设备 ip 替换为我从 whatsmyip.com 获得的公共 IP 地址

String connectionUrl = "jdbc:mysql://myPublicIp:3306/trial";

我是从朋友家跑的:

这是我得到的:

com.mysql.jdbc.CommunicationException:由于底层异常导致通信链接失败:

开始嵌套异常 java.net.Connect.Exception MESSAGE:连接超时:连接

正如我所说,代码没有问题,它适用于本地连接的设备。我想知道我的字符串的语法是否错误。 假设我的公共 IP 地址是 50.50.50.50 并且我运行 mysql 的设备是 192.168.x.x 并且端口是 3306 我应该如何格式化我的字符串。 谢谢。

【问题讨论】:

标签: java mysql jdbc


【解决方案1】:

您应该将您的 3306 端口转发给在其上获取数据库的设备,否则当您通过此端口请求连接时,您的路由器无法决定要查找的设备,它不会让任何东西通过。

【讨论】:

  • 我只是端口转发了 3306,它仍然显示相同的错误。我检查了端口是否打开并且是的。
  • TCP?您的连接 url 很好,它在您的网络中工作,您的问题是您无法通过此端口连接到您的 IP。
  • 感谢您的工作:D 有端口转发问题,现在已修复。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-10-12
  • 1970-01-01
  • 1970-01-01
  • 2020-07-08
  • 1970-01-01
  • 1970-01-01
  • 2017-02-21
相关资源
最近更新 更多