如何更改数据库用户密码,以便Spring引导应用程序仍然可以使用数据库?环境是Docker和Jenkins。
我的环境包括:
1-我的docker-compose.yml我有:
services:
xyzdb:
image: mysql:8.0.12
environment:
- MYSQL_ROOT_PASSWORD=admin
- MYSQL_DATABASE=geosoldatabase
- MYSQL_USER=johan
- MYSQL_PASSWORD=${LOCAL_MYSQL_PASSWORD}
volumes:
- /var/mysql-data:/var/lib/mysql
ports:
- "3306:3306"
Etc.
spring.datasource.url = jdbc:mysql://xyxdb:3306/geosoldatabase
spring.datasource.username = johan
spring.datasource.password = bladiebladiebla <== very first password
3-要更改密码,我执行了以下操作:
-
通过输入数据库docker容器更改用户密码,并使用以下命令更改名称:
ALTER USER 'johan'@'%' IDENTIFIED BY 'xyzabc123';
ALTER USER 'johan' IDENTIFIED WITH mysql_native_password BY 'xyzabc123';
Commit;
flush privileges;
-
在my Jenkins系统环境中更新了2个环境变量
LOCAL_MYSQL_PASSWORD=xyzabc123
SPRING.DATASOURCE.PASSWORD=xyzabc123
这是行不通的。启动Spring启动应用程序(在重新启动Jenkins后)失败,因为无法使用用户名连接到数据库。有一个错误的密码。
我忘了什么?