liunx 中mysql忘记密码找回
作者:互联网
1.打开文件
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
并且在最后面添加
skip-grant-tables
保存.
2.重启mysql
sudo service mysql restart
3.进入mysql
这时就能在没有密码的情况下进入数据库
mysql -uroot -p
进入后再次输入
use mysql;
4.修改密码并且重启
update mysql.user set authentication_string=password('这里输入你的密码') where user='root';
执行上面语句修改完密码后执行更新权限表
flush privileges;
然后exit退出数据库
重新打开文件
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
注释掉之前写入的语句并保存
#skip-grant-tables
然后重启mysql服务
sudo service mysql restart
这时再次输入你设置好的账户密码进行登录
如果登录的时候出现报错
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
我们再次执行1,2,3步骤
然后输入
select user,plugin from user;
从图中可以看到在执行了select user,plugin from user;后,错误原因是因为plugin root的字段是auth_socket,那我们改掉它为下面的mysql_native_password就行了。输入:
update user set authentication_string=password("ln122920"),plugin='mysql_native_password' where user='root';
然后再次执行
select user,plugin from user;
更改成功.
然后我们退出。
在注释掉之前的文件修改。并且重启mysql就行了
标签:plugin,sudo,密码找回,user,mysql,password,root,liunx 来源: https://blog.csdn.net/weixin_42608885/article/details/99709765