Есть две БД MySQL версий 5.1.53 и 5.6.17
Не могу подключиться к версии 5.1, с 5.6 все ОК.
Ошибка:
java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:110)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:89)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:63)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:73)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:79)
at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836)
at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:456)
at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246)
at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:197)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
Подключение:
String url = "jdbc:mysql://"+ sServer + "?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC";
Class.forName("com.mysql.cj.jdbc.Driver").getDeclaredConstructor().newInstance();
con = DriverManager.getConnection( url, sUser, sPass );
Пробовал версии jdbc
6.0.6
5.1.38
8.0.19
БД 5.1 из командной строки доступна
Валерий
36 уровень
подключение к MySQL 5.1.53
Комментарии (7)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Стас Пасинков Software Developer в Zipy Master
5 апреля 2020, 18:28
насколько я знаю, вот это вот все - не надо
используется для того, чтобы класс драйвера подгрузился класс-лоудером. 0
Валерий
5 апреля 2020, 19:38
"чтобы класс драйвера подгрузился класс-лоудером." - вот и удивляюсь, что без этого работает...
0
Валерий
5 апреля 2020, 16:15
Убрал Class.forName("com.mysql.cj.jdbc.Driver").getDeclaredConstructor().newInstance();
( пробовал и с "com.mysql.jdbc.Driver" )
соединение при JDBC 5.1.38 - прошло
Почему не понял
0
VladimirMaster
5 апреля 2020, 16:33
В доке все написано, читай.
И все-таки ты не ответил на главный вопрос: зачем тебе 139 вариантов баз данных.
0
Стас Пасинков Software Developer в Zipy Master
5 апреля 2020, 18:31
на стековерфлоу высказывалось предположение, что разные версии драйверов под разные версии бд.
я тоже раньше гемороился с разными версиями коннектора, и именно с мускулом такое было. нашел какую-то древнюю версию драйвера, которая работает стабильно, ее везде и использую, вообще забил на новые версии драйвера. больше гемора с ними
+2
VladimirMaster
5 апреля 2020, 11:14
Читай тут или попробуй старую версию драйвера: com.mysql.jdbc.Driver
Да и вообще для спортивного интереса, напиши, зачем тебе 184 версии MySQL на компе? Вот просто интересно, для чего это все нужно. На этой версии работает, на этой не работает.
P.S. И на будущее, форматируй код, который выкладываешь. Заключай его в тег "code"
0
Валерий
5 апреля 2020, 19:28
разные версии - разные проги на работе, каждая работает со своей БД.
По ссылке смотрю (но медленно).
JDBC 5.1.38 - соединяется и с 5.1 и 5.6 с условием без регистрации.
0