连接Spring Boot-MySql:不允许公钥检索

时间:2019-08-08 15:58:19

标签: java mysql spring

我在今年六月初运行了我的一个应用程序,没有任何问题。今天再次尝试后,我在控制台中收到以下错误:

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Public Key Retrieval is not allowed

关于如何解决的任何想法?

我已经对此进行了研究,但没有发现特定于Spring Boot应用程序的内容。

applications.properties中的设置:

spring.mvc.view.prefix=/WEB-INF/views/

spring.mvc.view.suffix=.jsp

spring.datasource.url = jdbc:mysql://localhost:3306/testdb?verifyServerCertificate=false&useSSL=false&requireSSL=false&useJDBCCompliantTimezoneShift=true&serverTimezone=UTC
spring.datasource.username = root
spring.datasource.password = 


spring.jpa.show-sql = true 


spring.jpa.generate-ddl=true
spring.jpa.hibernate.ddl-auto = update


spring.jpa.hibernate.naming.implicit-strategy = org.hibernate.cfg.ImprovedNamingStrategy

spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Public Key Retrieval is not allowed

2 个答案:

答案 0 :(得分:1)

使用以下内容

jdbc:mysql://localhost:3306/payphone?useSSL=false&useJDBCComplaintTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&allowPublicKeyRetrieval=true

答案 1 :(得分:0)

可能的解决方案:

1-检查mysql是否使用端口3306并且它仍然存在。

2-确保您的mysql用户名和密码正确。

3-如果您使用的是Mysql 8及更高版本,则可以检查身份验证插件更改表格this link