Java не могу подключиться к БД (jdbc mysql maven 6.0.6)

313
27 ноября 2017, 18:23

Доброго времени. Новичок, пытаюсь законнекнится к БД. При использовании jdbc версии 5.1.38 у меня все отлично работает (38 используется в видеоуроке по которому учусь). Затем пытаюсь изменить код (руководствуясь https://habrahabr.ru/sandbox/109224/) под драйвер версии 6.0.6 (этот код ниже), но в результате коннект получить не удается. В чем проблема не понимаю. Заранее спасибо package myPackage;

import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Main
{
private static String URL =
        "jdbc:mysql://localhost:3306/mydb?autoReconnect=true&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=UTC";
private static String USERNAME = "Admin";
private static String PASSWORD = "1260035";
public static void main(String[] args)
{
    Connection connection = null;
    Driver driver;
    try
    {
        driver = new com.mysql.cj.jdbc.Driver();
        DriverManager.registerDriver(driver);
    }
    catch(SQLException e)
    {
        System.err.println("Драйвер не зарегистрировался");
    }
    try
    {
        connection = DriverManager.getConnection(URL,USERNAME,PASSWORD);
        if(!connection.isClosed())
        {
            System.out.println("Соединение установлено");
        }
    }
    catch(SQLException ex)
    {
        System.err.println("Соединение не установлено");
    }
    finally
    {
        if (connection != null) try {
            connection.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}
}

Выдает ошибку:

java.sql.SQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:526)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:513)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:505)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:479)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:489)
    at com.mysql.cj.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:1677)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:1601)
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:633)
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:347)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:219)
    at java.sql.DriverManager.getConnection(DriverManager.java:664)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at myPackage.Main.main(Main.java:32)
Caused by: com.mysql.cj.core.exceptions.CJException: Unknown database 'mydb'
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:54)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:93)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:133)
    at com.mysql.cj.core.exceptions.ExceptionFactory.createException(ExceptionFactory.java:117)
    at com.mysql.cj.mysqla.io.MysqlaProtocol.checkErrorPacket(MysqlaProtocol.java:807)
    at com.mysql.cj.mysqla.io.MysqlaProtocol.checkErrorPacket(MysqlaProtocol.java:732)
    at com.mysql.cj.mysqla.io.MysqlaProtocol.checkErrorPacket(MysqlaProtocol.java:701)
    at com.mysql.cj.mysqla.authentication.MysqlaAuthenticationProvider.proceedHandshakeWithPluggableAuthentication(MysqlaAuthenticationProvider.java:536)
    at com.mysql.cj.mysqla.authentication.MysqlaAuthenticationProvider.connect(MysqlaAuthenticationProvider.java:204)
    at com.mysql.cj.mysqla.io.MysqlaProtocol.connect(MysqlaProtocol.java:1414)
    at com.mysql.cj.mysqla.MysqlaSession.connect(MysqlaSession.java:132)
    at com.mysql.cj.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:1619)
    ... 7 more
READ ALSO
Требуется ли синхронизация get в ArrayList?

Требуется ли синхронизация get в ArrayList?

Имеется коллекция, два потока проходятся по ней в цикле for each и распечатывают данные на консольУдаление или изменение элементов листа они...

298
JTable, как сделать редактируемой и как копировать инф в textArea

JTable, как сделать редактируемой и как копировать инф в textArea

Приветствую! Вопрос относительно JTable и кнопкиisCellEditable -true имеется, но таблица остается не редактируемой

257
Есть какая-нибудь замена sort в ArrayList?

Есть какая-нибудь замена sort в ArrayList?

Нужно отсортировать ArrayList, но Android Studio пишет

169
Ввод с кливиатуры и exeption

Ввод с кливиатуры и exeption

Привет всем! Пишу консольное приложениеВ switch я поставил ввод с клавиатуры,но если юзер введет не число - летит exeption и программа закрывается

255