今天在配置数据库连接时报了个错,在网上搜了好久,直到后来知道原因后被自己蠢笑了。。。
Access denied for user 'xxx'@'localhost' (using password: YES)
意思就是:无权限使用root账号本地登录MySQL
在数据库中测试的连接是正确的,密码也测试过无误
错误原因:
手误将datasource下的属性username写成了name,改回来就好了。以下是正确的写法
application.yml配置文件(本人在application.properties没有配置数据源信息。如果在properties、yml都写了同样的相关配置,若properties文件配置信息有误,由于spring boot优先匹配properties文件的数据信息,所以即使你在yml配置文件下写的是正确数据,还是会报错,二者选其一写配置信息就好)
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&severTimezone=UTC
username: root
password: 123
若忘记了Mysql数据库密码,在mysql测试连接也失败了, 可以参考这或者再找找其他文章吧
MySQL Access denied for user ‘root‘@‘localhost‘ (using password: YES/NO) 的原因以及解决方案_access denied for user root@localhost_晚风_END的博客-CSDN博客https://blog.csdn.net/alwaysbefine/article/details/109224657
----------------------------------------------(完,以下仅供个人学习)----------------------------------------------
spring.datasource.username与 spring.datasource.name含义是不一样的:
spring.datasource.name 是给数据源取名, 默认 testdb
spring.datasource.username 是数据库的登录用户名
有的也会写成spring.datasource.data-username,这个也是不对的
spring.datasource.data-username 是用于执行 DML 脚本的数据库的用户名(如果不同)
需要了解更多spring.datasource下的属性,请参考以下大佬的文章,我也是参考这儿的文章来源:https://www.toymoban.com/news/detail-767730.html
Springboot2配置之 spring.datasource_spring_datasource_platform_kfepiza的博客-CSDN博客https://blog.csdn.net/kfepiza/article/details/115310642文章来源地址https://www.toymoban.com/news/detail-767730.html
到了这里,关于【IDEA】数据库连接失败Access denied for user ‘xxx‘@‘localhost‘ (using password: YES)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!