2台笔记本电脑上的mysql通信链路故障

时间:2017-12-15 17:24:35

标签: java mysql

我已经制作了一个软件,我已经在不同的笔记本电脑上制作了mysql数据库,并且在不同的笔记本电脑上的软件,意味着我有2台笔记本电脑,一台有软件,一台有数据库,两台都连接着网线。现在我将我的软件与安装在不同笔记本电脑上的数据库连接,但是我收到了通信故障链接。我已经给出了服务器笔记本电脑的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)

1 个答案:

答案 0 :(得分:0)

默认情况下,端口3306;用于将连接路由到数据库的,将被关闭 - 或者至少被阻止来自任何外部连接。

你需要打开这个端口;并可能添加端口转发以确保正确定向任何外部连接。

查找如何打开端口并查看有关端口转发的link

如评论中所述,您还可以使用命令PING 169.254.96.182来检查是否可以建立连接!

此外,如果您打开端口,除非您有严格的安全措施;你应该从这个问题中删除你的IP,因为你基本上都给了我们所有的权限!