解决mysql数据库忘记root密码问题

一、首先终端中结束当前正在运行的mysql进程:
sudo /etc/init.d/mysql stop

查看mysql进程命令:
ps aux |grep mysqld

二、用mysql的安全模式运行并跳过权限验证:
sudo /usr/bin/mysqld_safe --skip-grant-tables

注意:在这里可能会报错
error:mysqld_safe Directory ‘/var/run/mysqld’ for UNIX socket file don’t exists
解决方法:
1、mkdir -p /var/run/mysqld
2、chown mysql:mysql /var/run/mysqld
建立不存在的问文件夹,然后再执行之前的命令:
sudo /usr/bin/mysqld_safe --skip-grant-tables

三、新开一个终端,以root身份登录
mysql -u root
然后修改密码:
use mysql
update user set Password = PASSWORD('root') where User ='root';
注意:括号里的'root'就是新密码。在这里可能又会报错

image.png

四、结束mysql的安全模式,用正常模式运行mysql
mysql>exit;
/etc/init.d/mysql restart
mysql -uroot -p
输入密码:root
刷新并退出
mysql>flush privileges;
mysql>quit;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容