If change MySQL JDBC driver from 5.1.38 to 6.0.2 I get the following exception

java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required 

This exception was happened in normal JDBC initilization.

Probably, this can be related with SSL, since I get the following messages also

Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.

which were absent in previous version.

6 Answers

This sounds like a regression. Was there a particular reason to switch to 6.0.2? If not, I'd revert back to 5.1.38 and give 6.x a shot after three months to let folks at MySQL to stabilize the driver.

1

It seems new versions of mysql connector (from 6 on) are not compatible with old version of the DBMS mysql(below 5.6). So in order to solve your problem, if you make an update of mysql connector, try to do the same with the DBMS. Actually I had the same issu with mysql connector 8.0.13 and the DBMS msql 5.1.... I solved it by moving the DBMS to 5.6.17

2

I had the same issue and I resolved by changing the parent tag version from 2.1.1.RELEASE to 2.0.0.RELEASE

from

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.1.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> 

to

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.0.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> 
0
 Use Maven depandency ###pom.xml <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.37</version> </dependency> ##application.properties server.port=9092 jwt.secret=javainuse spring.datasource.url=jdbc:mysql://localhost:3306/hospital spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name= com.mysql.jdbc.Driver spring.datasource.platform=mysql #spring.jpa.hibernate.ddl-auto=create-drop spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MySQL5InnoDBDialect spring.jpa.hibernate.ddl-auto= update #spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MySQL5InnoDBDialect 

It may be due to mysql version is too old so you need to do 3 changes in that case: in application.properties do first 2 changes:

  1. spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect

  2. spring.datasource.driver-class-name=com.mysql.jdbc.Driver

  3. Do changes in pom.xml file in dependency of mysql-connector-java replace scope tag to the version tag and in version write your mysql version like 5.1

I resolve this problem by removing mysql version in pom.

<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> 

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.