MySQL - Es wird nicht empfohlen, eine SSL-Verbindung ohne Überprüfung der Identität des Servers herzustellen

Wenn Sie eine Spring Boot-Anwendung starten und eine JDBC-Verbindung herstellen, werden auf der Konsole die folgenden Warnmeldungen angezeigt:

Fri Feb 10 18:43:02 SGT 2017 WARN: 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.

//... repeat over and over

Hier sind die Verbindungseigenschaften:

application.properties

#mysql datasource
spring.datasource.url=jdbc:mysql://localhost/example
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

P.S Tested with MySQL 5.7.17

Lösung

Um dies zu beheben, fügen Sie am Ende der MySQL-Verbindungszeichenfolge einuseSSL=false hinzu:

application.properties

#mysql datasource
spring.datasource.url=jdbc:mysql://localhost/example?useSSL=false
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver