在Linux下忘记MySQL密码后我们可以通过一个mysql的参数–skip-grant-tables &轻松解决这个问题
亲测在CentOS有效
其中 --skip-grant-tables 的意思是跳过授权表,通过此参数来跳过输入密码,后面跟得 & 符号是表示设置此进程为后台进程
具体操作过程如下:
1.首先关闭掉MySQL系统服务:
sudo systemctl stop mysql
2.使用命令绕过登录密码
mysqld_safe --skip-grant-tables & mysql
3.进入 mysql数据库,然后通过语句修改密码:
use mysql
update user set password=password("root1234") where user='root'; //修改用户:root的密码成为:root1234
flush privileges//刷新MySQL的系统权限相关表,否则会出现拒绝访问 忘记输入的话重启mysql服务也可以
4.重启mysql的服务就可以用新密码进入mysql了
sudo systemctl restart mysql.service
5.或者重启一下服务
sudo shutdown -r now