подключение MySQL в Eclipse

287
30 июня 2018, 12:00

Всем привет. Просмотрел проблемы,связанные с данной темой, но ответа так и не нашел. Возможно,делаю что то не правильно. Суть проблемы: Пытаюсь создать элементарное подключение к БД MySQL в Eclipse с помощью java Собственно,вот код:

public class DB { 
    public static void main(String[] args) {
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
            System.out.println("Driver loading success!");
            //у MySQL обязательно есть системная база,
            //к ней и будем создавать соединение.
            String url = "jdbc:mysql://localhost/mysql?autoReconnect=true&useSSL=false";
            String name = "root";
            String password = "root";
            try {
                Connection con = DriverManager.getConnection(url, name, password);
                System.out.println("Connected.");
                con.close();
                System.out.println("Disconnected.");
            } catch (SQLException e) {
                e.printStackTrace();
            }
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

А в ответ получаю:

Driver loading success!

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:108)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:95)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:87)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:61)
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:71)
    at com.mysql.cj.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:932)
    at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:857)
    at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:444)
    at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:230)
    at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:226)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at telegrambot.DB.main(DB.java:41)
Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value 'RTZ 2 (????)' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:59)
    at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:83)
    at com.mysql.cj.util.TimeUtil.getCanonicalTimezone(TimeUtil.java:128)
    at com.mysql.cj.protocol.a.NativeProtocol.configureTimezone(NativeProtocol.java:2201)
    at com.mysql.cj.protocol.a.NativeProtocol.initServerSession(NativeProtocol.java:2225)
    at com.mysql.cj.jdbc.ConnectionImpl.initializePropsFromServer(ConnectionImpl.java:1391)
    at com.mysql.cj.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:895)
    ... 7 more

Собственно,что уже пытался сделать: Пытался подключиться к различным БД (не только к стандартной), которые сам создал. Качал различные версии JDBC Connector от 5.0 до 8.0.11 - не помогло пытался в Eclipse добавить новую версию драйвера, но он противится мне (прилагаю скриншот)

Если кто нибудь подскажет,как можно сюда добавить драйвер более новых версий, буду очень благодарен!

Так же пытался в linux подключиться к уже использующейся и работающей БД от Django проекта с точно правильными username and password (потому что одной из причин данной ошибки могло быть неверное имя пользователя и пароль)

Собственно,вроде все. Целый день убил на решение данной проблемы и уже не знаю,что делать. Может кто-нибудь подскажет?

Answer 1

Все было гораздо проще. При создании нового подключения к БД данная ошибка

Unable to locate JAR/zipin file system as specified by the driverdefinition: ...

Решается следующим образом:

  • 1) Заходим в JAR list
  • 2) Нажимаем Clear All
  • 3) Добавляем свой драйвер и эклипс больше не ругается
  • 4) Задаем параметры подключения к БД и подключаемся.

У меня все заработало. Надеюсь кому-нибудь это тоже поможет!

READ ALSO
Как парсить html страничку с JavaScript в python 3?

Как парсить html страничку с JavaScript в python 3?

Как парсить html страничку с JavaScript в python 3 и что для этого нужно

272
Не работают ссылки Wordpress

Не работают ссылки Wordpress

Через functionsphp вставил собственный блок с ссылкой

274
Не могу понять, для чего нужно использовать свойство box-sizing в CSS

Не могу понять, для чего нужно использовать свойство box-sizing в CSS

Всем здравствуйте! У меня такой вопрос, продолжил я изучение HTML/CSS, и я не могу понять, для чего вообще нужно применять свойство box-sizing для HTML-элементов...

232
В чем отличие в объединении селекторов в CSS

В чем отличие в объединении селекторов в CSS

Я пытаюсь разобраться в чем разница между выполнением трех разных типов селекторовТ

289