@[TOC](关于Mysql报错java.sql.SQLException: Access denied for user ‘root’@‘localhost’ (using password: YES)的问题)
首先说一下遇到的问题
我在运行java程序的时间莫名其妙的报错报错信息较长,我就把主要的粘贴过来
java.sql.SQLException: Access denied for user ‘root’@‘localhost’ (using password: YES),然后我百度了很多,发现大部分都是一样的,试了之后完全没卵用。
解决
没办法接着找吧,找了半天也试了很多,最后解决了。解决办法如下。
1.首先要把Mysql服务停掉,有的说是什么要停掉服务,修改init文件,完全没必要,直接把mysql服务停掉;
2. 然后打开cmd,输入命令 mysqld --skip-grant-tables 然后在另外开一个cmd窗口。输入mysql -u root -p,然后输入密码的时候直接敲回车,不要输密码,不要输密码,不要输密码
3. 重点来了,首先我们要输入 use mysql;
命令 这样才能在mysql库里面找到user表
4. 在输入命令select host,user,password from user;
查看user表中的host地址和user用户名。出现问题的应该比这个图要多几个host和user。
5.根据上表查出来的信息,只保留localhost,其他的host删除delete from user where host <> 'localhost';
6. 然后修改密码update user set password=password('1234');
7. 刷新缓冲,使修改生效。flush privileges
8. 退出,重新登录 quit;
9. mysql -uroot -p1234
到这里我的问题就解决了,不知道大家的一样不一样。
参考博客 https://blog.csdn.net/hgq_csdn/article/details/53728451