解决java连接本地mysql,报Access denied for user 'root '@'localhost' (using password: YES)的问题

今天遇到一个坑,刚爬出来,填上以惠及他人。


在项目中,连接数据库的时候,报了下面的异常

### Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLException: Access denied for user 'root  '@'localhost' (using password: YES)] with root cause
java.sql.SQLException: Access denied for user 'root  '@'localhost' (using password: YES)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1094)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4226)

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4158)

        ......


百度这个错误,网上有很多关于修改mysql密码的,还有修改权限的;

但是对我并不适用,我之所以没有照着改,原因有二:

一是因为我安装mysql的时候,就已经可以用root用户名和root密码登陆成功了。

二是因为我本地已经用jdbc连接过mysql,也成功了。

所以现在在项目中连不上,肯定不是数据库密码或权限的问题。(也希望大家不要搜索问题之后盲目跟着修改,还是应该先仔细分析一下,别人的方法 对你适不适用

经过仔细研究,发现了——

在我的jdbc.properties配置文件中,jdbc.username一行最后有两个空格!!!


其实,仔细一点分析报错信息的话,也应该能看出来的,Access denied for user 'root  '@'localhost' ,这句里面的root后面其实是有两个空格的。

总结:properties配置文件,单行末尾千万不要有空格!

  • 19
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 14
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值