我正在使用 spring boot 开发一个简单的网络应用程序。在第一步中,我实现了有关页面本身的所有内容和一个简单的登录。此外,我使用 mysql 和 hibernate 实现了数据库访问。我的数据库在本地 easyphp devserver 上运行。
第一步,一切正常。但是,在重置数据库并使用相同的凭据重新创建用户后,Hibernate 无法获得连接:
2018-02-09 21:17:11.487 ERROR 9592 --- [ restartedMain] o.a.tomcat.jdbc.pool.ConnectionPool : Unable to create initial connections of pool.
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Access denied for user ''@'localhost' to database 'db'
据我所知,没有配置用户名。但是在我的 application.properties
中,设置了一个用户名:
spring.datasource.url=jdbc:mysql://localhost:3306/db?userSSL=false
spring.datasource.username=user
spring.datasource.password=
启动时出现异常,应该是配置问题。在数据库中,用户 'user'
拥有数据库 'db'
的所有权限,但没有其他权限。
最佳答案
数据源 URL 可能是导致问题的原因。那是错字吗?您可以通过将其重置为以下内容来检查吗?它必须是“useSSL”而不是“userSSL”
spring.datasource.url=jdbc:mysql://localhost:3306/db?useSSL=false
spring.datasource.username=user
spring.datasource.password=
如果上述方法不起作用,您的问题可能与用户权限有关。已发布问题 here与您的相关(尽管它是在 PHP 中)。
希望这能解决问题,让我们知道。
关于java - Spring Boot 不从 application.properties 加载用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48713630/