Springboot项目连接数据库报错:Caused by: java.sql.SQLException: Access denied for user ‘root’@‘localhost’ (using password: YES)
项目环境:
项目和数据库在Docker中运行,并配置有mysql容器的docker网络parkingmysql。
原因:
1.密码错误。
2.application.yml中数据库账号地址错误。
一般是 jdbc:mysql://localhost:3306/database,这里的parkingmysql是docker中创建的网络。
3.application.yml中数据库账号的密码配置误导引起错误。
该配置中密码是 ‘123456’,我天真的以为是有单引号的!
去掉单引号使用sql语句修改成功!
docker exec -it mysql bash
# 登录 mysql
mysql -uroot -p
# mysql>
# 更新权限
flush privileges;
# 授权
Grant all on databasename to 'username'@'localhost' identified by 'passwd123';
# 更新权限
flush privileges;