我已经做了一个软件,我已经在不同的笔记本电脑上做了mysql数据库,并且软件在不同的笔记本电脑上,这意味着我有两台笔记本电脑,一个有软件,一个有数据库,两者都通过网线连接。现在,我正在将我的软件与安装在不同笔记本电脑上的数据库连接起来,但我得到了一个通信故障链接。我已经给出了服务器笔记本电脑的ip地址,但仍然收到错误,请告诉我如何解决这个问题,代码在这里。
private static void init()throws Exception{
String url="jdbc:mysql://169.254.96.182:3306/content_management_system";
String user="root";
String password="oracle";
con=DriverManager.getConnection(url, user, password);
System.out.println("connection successfull");
}//end method错误是
com.mysql.jdbc.exceptions.jdbc4.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.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:425)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:989)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:341)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2189)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2222)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2017)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:779)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)发布于 2017-12-16 01:29:09
默认情况下,用于将连接路由到数据库的端口3306将关闭-或者至少阻止任何外部连接。
您将需要打开此端口;并可能添加端口转发,以确保任何外部连接都被正确定向。
查看如何打开端口,并查看此端口转发的link。
正如注释中所提到的,您还可以使用命令PING 169.254.96.182检查是否可以建立连接!
另外,如果你确实开放了端口,除非你有严格的安全措施,否则你应该从这个问题中删除你的IP,因为你基本上给了我们所有的访问权限!
https://stackoverflow.com/questions/47837129
复制相似问题