【问题标题】:Connection with mySQL from JAVA in Linux在 Linux 中通过 JAVA 连接 mySQL
【发布时间】:2014-02-23 04:11:26
【问题描述】:

我在从 Java 连接到 mySQL 时遇到问题。我正在使用带有 NetBeans 的 Linux,并下载了特定的驱动程序。我在 xampp 中有 mySQL。

我的代码是:

try {
    Class.forName("com.mysql.jdbc.Driver");
    Connection c = DriverManager.getConnection(
           "jdbc:mysql://localhost:3306/nombreBaseDatos",
           "user",
           "pass"
     );
} catch (ClassNotFoundException ex) {
    Logger.getLogger(BD1.class.getName()).log(Level.SEVERE, null, ex);
} catch (SQLException ex) {
    Logger.getLogger(BD1.class.getName()).log(Level.SEVERE, null, ex);
}

我得到的错误是这样的:

com.mysql.jdbc.CommunicationsException:通信链接失败 由于潜在的异常:

** 开始嵌套异常 **

java.net.ConnectException MESSAGE: Conexión rehusada

堆栈跟踪:

java.net.ConnectException: Conexión rehusada at java.net.PlainSocketImpl.socketConnect(Native Method) 在 java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) 在 java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) 在 java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) 在 java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 在 java.net.Socket.connect(Socket.java:579) 在 java.net.Socket.connect(Socket.java:528) 在 java.net.Socket.(Socket.java:425) 在 java.net.Socket.(Socket.java:241) 在 com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256) 在 com.mysql.jdbc.MysqlIO.(MysqlIO.java:271) 在 com.mysql.jdbc.Connection.createNewIO(Connection.java:2771) 在 com.mysql.jdbc.Connection.(Connection.java:1555) 在 com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) 在 java.sql.DriverManager.getConnection(DriverManager.java:571) 在 java.sql.DriverManager.getConnection(DriverManager.java:215) 在 bd.pkg1.BD1.main(BD1.java:25)

** 结束嵌套异常 **

最后一个发送到服务器的数据包是 1 毫秒前。在 com.mysql.jdbc.Connection.createNewIO(Connection.java:2847) 在 com.mysql.jdbc.Connection.(Connection.java:1555) 在 com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) 在 java.sql.DriverManager.getConnection(DriverManager.java:571) 在 java.sql.DriverManager.getConnection(DriverManager.java:215)

有人可以帮我建立这种联系吗?

【问题讨论】:

    标签: java mysql linux


    【解决方案1】:

    这表明 MySql 不接受 localhost:3306 的连接

    是这样吗?做个简单的

    telnet localhost 3306 
    

    连接到您机器上的接收端口?您需要configure MySql 进行此类连接吗?

    【讨论】:

    • 我尝试了相同的代码与另一个连接字符串,如“jdbc:mysql://localhost/nombreBaseDatos”,错误是一样的
    • 按照 Brian 的建议:您的 MySQL 服务器不接受给定端口上的连接。也许它没有启动,或者有防火墙阻止您连接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-26
    • 2014-06-11
    • 2020-02-07
    • 2016-02-25
    • 2016-08-13
    • 2019-08-31
    • 2014-10-08
    相关资源
    最近更新 更多