首页 > 编程知识 正文

mysql重置用户密码,mysql密码忘了重装

时间:2023-05-04 21:32:46 阅读:187592 作者:4752

重置密码解决 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 问题

在服务器部署项目安装mysql后,忘记了root密码,一直提示错误:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

可以通过重置密码解决

 

首先跳过mysql的密码认证过程:

# vim /etc/my.cnf(注:windows下修改的是my.ini)

​​找不到my文件可以通过 whereis my 查找

​​​​

 

在文档内找到[mysqld]文本段:

在vim命令模式下输入/mysqld可简单定位到mysqld字段:

进入编辑模式在[mysqld]下任意一行添加“skip-grant-tables”用来跳过密码验证,如图:

 

​​

esc回到命令模式,保存并退出:

:wq​

 

接下来,重启mysql

/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)

重启之后直接输入 mysql 即可进入mysql

​​

 

接着修改root的密码:

mysql> use mysql;

在设置新密码时需注意:

在mysql5.7以下的版本如下:

           mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root' and host='127.0.0.1' or        host='localhost';//把空的用户密码都修改成非空的密码就行了。

在mysql5.7版本及以上如下:

           mysql>update mysql.user set authentication_string=password('newpassword') where user='root' and          host='127.0.0.1' or host='localhost';

mysql> flush privileges;

mysql> quit

 

最后编辑my.cnf,去掉刚才添加的内容,然后重启MySQL。

​​

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。