关于Mysql报错java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)的问题

@[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.youkuaiyun.com/hgq_csdn/article/details/53728451

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值