【问题标题】:Java : Failing to connect to mySql DBJava:无法连接到 mySql 数据库
【发布时间】:2017-01-20 03:18:32
【问题描述】:

我刚刚建立了一个本地的 mySql 数据库。我可以通过命令行和第三方软件(Navicat..)正确连接到它。

服务器:localhost:3306

用户:root

密码:password

数据库名称:students

但是,当我尝试使用 java 连接时,出现错误。

代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Sql {

   public static void main(String[] args) {

    Connection conn = null;

    try {

        Class.forName("com.mysql.jdbc.Driver");

        conn = DriverManager.getConnection("jdbc:mysql://localhost:3306//students?autoReconnect=true&useSSL=false",
                "root", "password");

        Statement sqlState = conn.createStatement();


    } catch (SQLException ex) {

        System.out.println("SQLException" + ex.getMessage());
        System.out.println("SQLException" + ex.getSQLState());

    } catch (ClassNotFoundException e) {
        e.printStackTrace();
    }

   }

}

输出:

SQLExceptionCould not create connection to database server. Attempted reconnect 3 times. Giving up.
SQLException08001

也试过了:

conn = DriverManager.getConnection("jdbc:mysql://localhost:3306//students", "root", "password");

conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306//students?autoReconnect=true&useSSL=false","root", "password");

其他尝试:

防火墙已禁用。

我通过将 .bin.jar 放入其中来安装 Jconnector:

C:\Program Files\Java\jdk1.8.0_73\jre\lib\ext

我可以在 Eclipse 中的 JRE 下的左侧看到它,并且导入不会出错。

注意事项:

从终端、工作台或 Navicat 使用 mySQL 没有错误,任何查询都有效,本地服务器运行正常且凭据正确,用户拥有完整的管理员权限。

有什么建议吗?

【问题讨论】:

  • 是否可以通过 MySQL 控制台或工作台登录
  • 是的,正如我在开头所写的那样。
  • 不应该是localhost:3306/students 吗?不确定
  • 尝试更改您的 mysql 连接器 jar
  • @Fast Snail 哈哈,你是对的,它是 localhost:3306/students。我讨厌打字错误,非常感谢您,先生,现在一切正常。

标签: java mysql sql exception connection


【解决方案1】:

我最近遇到了类似的问题。我的问题最终是 MySQL 服务器版本是 8.0.19,而 flyway 使用的是 5.1.40 版本的 java MySQL 库。

一旦我将 MySQL 库版本更新到 8.0.19,我的错误就消失了。

【讨论】:

    【解决方案2】:

    此异常可能有 4 个原因:

    1. 用户没有权限连接到数据库。
    2. MySQL 服务未运行。
    3. MySQL 连接器 Jar 不正确。
    4. 数据库 URL 不正确;。

    在连接到 MySQL 数据库之前检查上述先决条件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-30
      • 1970-01-01
      • 2013-03-24
      • 2011-07-03
      • 2016-12-03
      • 2014-01-25
      • 1970-01-01
      相关资源
      最近更新 更多