java 连接远程mysql_Java连接远程Mysql过程中遇到的各种问题

2018-11-16 10:46

2018-11-19 21:35

前言

本篇文章记录的是本人在使用Java程序连接另一台电脑(同一局域网)上的Mysql数据库的过程中遇到的各种问题及解决方案。希望能给遇到同样问题的人提供一些帮助。当初本人遇到这些问题的时候,也是在各位大神的博客中找到的答案,本篇博客在某种程度上也算是这几个问题的答案集合吧。

软件环境

客户端: Windows10  +  Java    [ IP: 192.168.76.10 ]

数据库服务端: Ubuntu 16.04  +  Mysql 14.14      [  IP: 192.168.76.1 ]

服务端的Mysql就是用最普通的 apt-get install 命令来安装的。安装完以后没有其它任何设置操作。

客户端使用的Java代码

1 final String driver = "org.gjt.mm.mysql.Driver";

2 final String url = "jdbc:mysql://192.168.76.1:3306/mysql";

3 final String user = "root";4 final String password = "123456";5 Connection conn = null;6 PreparedStatement pstmt = null;7 ResultSet rs = null;8

9 try{10 Class.forName(driver);11 conn =DriverManager.getConnection(url,user,password);12 String sql = "SELECT * FROM user";13 pstmt =conn.prepareStatement(sql);14 rs =pstmt.executeQuery();15 while(rs.next()){16 String h = rs.getString(1);17 String u = rs.getString(2);18 System.out.println("host:" + h + ",user:" + u);

19 }20 }catch(Exception e){21 e.printStackTrace();

22 }

数据库服务端确认Mysql正常运行后,便可以尝试运行上面的代码去连接了。此时,便有几率遇到下面一系列问题。

问题一:报“连接超时”错误

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet sent successfully to the server was0milliseconds ago. The driver has not received any packets from the server.

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

at java.lang.reflect.Constructor.newInstance(Unknown Source)

at com.mysql.jdbc.Util.handleNewInstance(Util.java:404)

at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:981)

at com.mysql.jdbc.MysqlIO.(MysqlIO.java:339)

at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2253)

at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2286)

at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2085)

at com.mysql.jdbc.ConnectionImpl.(ConnectionImpl.java:795)

at com.mysql.jdbc.JDBC4Connection.(JDBC4Connection.java:44)

at sun.reflect.Nat

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值