jdbc连接另外一台主机Mysql数据库异常
实现代码如下:
package taxidata;
import java.sql.Connection;
import java.sql.DriverManager;
public class num {
public static void main(String args[]){
Connection con = null;
//String url = "jdbc:mysql://172.18.100.11/mytable";
//String user = "root";
//String password = "123456";
try {
Class.forName("com.mysql.jdbc.Driver"); //加载驱动程序
System.out.println("驱动程序加载成功");
}
catch (Exception e) {
System.out.println("无法载入JDBC驱动程序");
}
try{
con = DriverManager.getConnection("jdbc:mysql://172.18.100.11/mytable", "root","123456");
System.out.println("数据库连接成功");
}
catch(Exception e){
System.out.println("MySql异常");
e.printStackTrace();
}
}
}
运行结果:
驱动程序加载成功
MySql异常
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.net.ConnectException
MESSAGE: Connection timed out: connect
STACKTRACE:
java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:241)
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:271)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2771)
at com.mysql.jdbc.Connection.<init>(Connection.java:1555)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at taxidata.num.main(num.java:21)
** END NESTED EXCEPTION **
Last packet sent to the server was 0 ms ago.
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2847)
at com.mysql.jdbc.Connection.<init>(Connection.java:1555)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at taxidata.num.main(num.java:21)
求大神告知哪里出错了。。是不是服务器那边的Mysql还是代码本身就出错了。本人刚接触数据库编程,不太懂。。求解答啊!!