连接到Localhost MySQL数据库时出现问题

时间:2018-07-12 06:15:41

标签: java mysql jdbc

我遇到错误:com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.

编辑:链接到Stack Trace

这是错误的最后一个“部分”,表示它是NullPointerException

    at armyofdragons.mule.mysql.Database.<init>(Database.java:28)
    at Main.main(Main.java:6)
Caused by: java.lang.NullPointerException
    at com.mysql.jdbc.ConnectionImpl.getServerCharset(ConnectionImpl.java:2997)
    at com.mysql.jdbc.MysqlIO.sendConnectionAttributes(MysqlIO.java:1934)
    at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1863)
    at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1226)
    at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2253)
    at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2284)
    ... 14 more

`

我的URL字符串: “ jdbc:mysql://127.0.0.1:3306 / schemaname?useUnicode = true&characterEncoding = UTF-8&zeroDateTimeBehavior = convertToNull&serverTimezone = GMT”

我的连接代码段:

connection = null;
        try {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InstantiationException e) {
            e.printStackTrace();
        }

        try {
            connection = DriverManager.getConnection(URL, "admin", "passwordcensored123");
        } catch (SQLException e) {
            e.printStackTrace();
        }

我已经使用了正确的架构/数据库名称,用户名,密码以及所有其他需要的“要求”。我还将绑定地址设置为127.0.0.1,端口设置为3306。该数据库处于联机状态,并且我已确保该服务正在运行。

2 个答案:

答案 0 :(得分:0)

根据https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-usagenotes-connect-drivermanager.html,您可以在DriverManager.getConnection()中使用实际的jdbc连接字符串,您是否尝试过?

MySql服务器与连接器版本不兼容的问题也可能很好。仔细检查您的连接器版本。

您的代码段有点小,您可能需要更加慷慨地粘贴。

答案 1 :(得分:0)

我发现了问题。我使用的是错误版本的JDBC / J Connector。我正在查看的以前的StackerOverflow帖子提供了一种将其添加到IntelliJ的解决方案,该帖子已经过时了,我没有检查它是否是最新版本。

对于任何想知道如何将其添加到IntelliJ的人,请转到项目结构->库->添加(+)->从Maven添加...->输入“ mysql:mysql-connector-java:8.0”。 11”->单击“确定”。