嘿伙计们,我试图从我朋友的wifi连接mysql数据库。数据库从我所有其他设备连接并正常工作,它们都在同一个网络上,但我想从外部网络(我的朋友网络)连接到数据库。
我用whatsmyip.com上的公共IP地址替换了localhost / device ip
String connectionUrl =" jdbc:mysql:// myPublicIp:3306 / trial&#34 ;;
我从我朋友的家里跑了它:
这就是我得到的:
com.mysql.jdbc.CommunicationException:由于基础异常导致通信链接失败:
开始嵌入异常 java.net.Connect.Exception 消息:连接超时:连接
正如我所说,代码没有任何问题,它适用于本地连接的设备。我想知道我的字符串语法是否错误。 假设我的公共IP地址是50.50.50.50并且运行mysql的设备是192.168.x.x并且端口是3306我应该如何格式化我的字符串。 感谢。
答案 0 :(得分:0)
您应该将3306端口转发到装有数据库的设备上,否则当您通过此端口请求连接时,您的路由器无法确定要查找的设备,并且它不会让任何事情通过代替。