详细步骤:
安装Mysql后,长时间不登陆忘记密码:
登录时报错:Error: Access denied for user ‘root’@‘localhost’ (using password: YES)
错误:对用户“root”@本地主机拒绝访问(使用密码:是)。
一般这个错误是由密码错误引起,解决的办法自然就是重置密码。
1、 跳过MySQL的密码认证过程
重置密码的第一步就是跳过MySQL的密码认证过程,方法如下:
#vim /etc/my.cnf (注:windows下修改的是my.ini)
(1)输入i,进入编辑,在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程,如下图所示:
(2)点击ESC 使用 **:wq!**保存并退出。
2、使用 service mysqld restart 重启MySQL服务。
3、免密码登陆(注:敲入 mysql -u root -p 命令然后回车,当需要输入密码时,直接按enter键,便可以不用密码登录到数据库当中)
4、flush privileges;(首先更新权限)
5、修改新密码
set password for root@localhost=‘新密码’;
如果上述修改密码不成功,那么可能是 mysql表里:的localhost 是 % ,那么此时需要,将localhost改为%,在重新进行修改。可以先查一下:确认下:
如果是:那么用此语句 set password for ‘root’@‘%’=password(‘123456’);
6、quit;或者exit;退出
7、使用vim /etc/my.cnf命令把 my.cnf中添加的skip-grant-table删除
8、重启MySQL输入刚设置的密码,完成登陆 service mysqld restart
注:systemctl stop mysqld.service 停止服务;
systemctl stop mysqld.service 启动服务;