[springboot项目连接MySQL数据库报错Access denied for user ‘root’@‘localhost’ (using password: YES)的几种解决办法
问题描述:
在自己搭建springboot项目,连接MySQL数据库后,运行测试类中的方法,控制台报错:Access denied for user ‘root’@‘localhost’ (using password: YES),如图所示:
解决方案:
方案一:
看yml文件中的数据库密码是不是数字,以0开头的那种,如果是,则需要把密码用引号引起来,例如:password: “0103”,如果方案一不适应,则按照方案二。
方案二:
输入cmd,进入mysql命令行,输入mysql -u root -p,然后输入yml文件中的密码,如果能正常连接。
如下:
F:\soft\java\mysql-8.0.16-winx64\bin>mysql -u root -p
Enter password: *********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 295
Server version: 8.0.16 MySQL Community Server - GPL
则证明yml文件写的密码没有问题,就需要好好检查下yml中的格式以及单词是否拼写有误,例如我就是单词拼写错误导致的,如图:
发现黄色框中的单词写错了,应该是username,改了之后就可以正常连接了。如果方案二不适用,请看下面的方案三。
方案三:
可能是数据库授权导致的,可以百度下怎么解决,因为我这边不属于此类情况,所以不进行截图展示,不过这个也比较简单,可参考网上的具体操作。
备注:遇到bug不要慌,坚信一定可以解决,只是时间的问题。