提问人:pbuchheit 提问时间:11/15/2023 最后编辑:pbuchheit 更新时间:11/15/2023 访问量:34
从 Spring Boot 应用程序连接到远程 MySql DB
Connecting to a remote MySql DB from Spring Boot application
问:
我在春季应用程序时遇到了一个奇怪的问题。该应用程序在 Tomcat 应用程序服务器上运行,并使用 spring 数据源连接到远程 MySql 数据库。出于测试目的,我们将应用程序设置为使用数据库上的管理员用户进行连接。该设置完美运行。但是,在进入生产环境之前,我们需要在应用程序可用于连接的数据库中设置一个非管理员用户。
我进入并使用命令在数据库中创建了一个新用户
创建由 'password' 标识的用户 'myuser'@'%';
然后我使用以下命令设置权限:
将 mydb.* 上的 SELECT、INSERT、UPDATE、DELETE 授予 'myuser'@'%';
为了验证一切设置是否正确,我尝试以新用户身份登录MySql,效果很好。不好的是应用程序。我尝试访问我们的一项服务,但出现以下异常:
java.sql.SQLException: Access denied for user 'myuser'@'1.1.123.123' (using password: YES)
为了排除可能的权限问题,我回到了数据库,并将管理员用户的所有授权添加到了新用户。我刷新了应用程序并得到了相同的结果。我觉得好像在某个地方我错过了一步。谁能说明我做错了什么?
仅供参考,应用程序的 application.properties 文件如下所示:
spring.datasource.url = jdbc:mysql://myhost.com:3306/mydb
spring.datasource.username = myuser
spring.datasource.password = password
答:
0赞
pbuchheit
11/15/2023
#1
经过一些实验,这似乎是一个缓存问题。应用程序现在正在使用发布的配置。
评论