Проблема с подключением mysql. Не найдено подходящего драйвера, чередующегося с Отказано в доступе для пользователя '' @ 'localhost' (используя пароль: ДА) - PullRequest
2 голосов
/ 08 марта 2019

MySQL версия 8.0.15
MySQL - коннектор - Java - 8.0.15

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Scene;
import javafx.scene.layout.AnchorPane;
import javafx.stage.Stage;

import java.sql.*;

public class Main extends Application {

public static void main(String[] args) throws Exception {

    Statement statement = null;
    Connection connection = null;
    ResultSet resultSet = null;


    try {
        connection =
                DriverManager.getConnection("jdbc:mysql://localhost/firma?" +
                        "user=root&password=database123");

    } catch (SQLException ex) {
        // handle any errors
        System.out.println("SQLException: " + ex.getMessage());
        System.out.println("SQLState: " + ex.getSQLState());
        System.out.println("VendorError: " + ex.getErrorCode());
    }

    launch(args);
}

Я ищу решения, и я боролся с этим в течение нескольких часов. Reinstal уже был сделан. Есть несколько ошибок, которые появляются поочередно. Когда я не добавляю jara в библиотеку, я получаю это:

SQLException: не найден подходящий драйвер для jdbc: mysql: // localhost / firma? User = root & password = database123 SQLState: 08001 VendorError: 0

После добавления банки:

SQLException: значение часового пояса сервера 'rodkowoeuropejski czas stand' не распознано или представляет более одного часового пояса. Вы должны настроить сервер или драйвер JDBC (через свойство конфигурации serverTimezone), чтобы использовать более конкретное значение часового пояса, если вы хотите использовать поддержку часового пояса. SQLState: 01S00 VendorError: 0

Я изменил URL-адрес для такого символа, потому что в других случаях у меня была идентичная ошибка Как я могу исправить проблему с часовым поясом и SSL

DriverManager.getConnection("jdbc:mysql://localhost/firma?useLegacyDatetimeCode=false&serverTimezone=UTC?" +
                        "user=root&password=database123");

и наконец я получаю:

SQLException: доступ запрещен для пользователя '' @ 'localhost' (с использованием пароля: ДА) SQLState: 28000 VendorError: 1045

Почему он даже не показывает здесь имя пользователя?
Доступ запрещен для пользователя '' @ 'localhost' (используется пароль: ДА)

База данных существует, имя пользователя и пароль в URL верны.

+------------------+-----------+
| user             | host      |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+

С консоли я могу без проблем войти в mysql.

Пожалуйста, помогите мне. Мои руки уже падают ...

...