boot&mysql-不能使用新的服务数据库用户名/密码

yv5phkfx  于 2021-06-15  发布在  Mysql
关注(0)|答案(1)|浏览(412)

如何更改数据库用户密码,以便spring引导应用程序仍然可以使用数据库?环境是docker和jenkins。
将密码从“password1”更改为“password2”不起作用。sprint启动应用程序无法连接到(mysql)数据库。错误是:由于用户凭据无效,无法连接。
我的环境包括:
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.

2-spring boot aplication.properties文件包含:

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;

更新了myjenkins系统环境中的2个环境变量

LOCAL_MYSQL_PASSWORD=xyzabc123
SPRING.DATASOURCE.PASSWORD=xyzabc123

这不管用。启动spring启动应用程序(在重新启动jenkins之后)失败,因为无法使用用户名连接到数据库。密码错误。
当我将所有3个更新(以上两点)更改回初始密码时,一切正常。
我忘了什么?

2admgd59

2admgd591#

几个月来,没有人提出解决办法。这是个信号。
几个月以来,我一直在使用mysql的dockerized版本。很好用。还没有问题。
好的解决方法是通过docker使用mysql。

相关问题