linux平台下,mysql密码重置
0X00 修改配置并重启mysql服务:
1 cp /etc/mysql/my.cnf my.cnfbak #做个备份 2 vim my.cnf在my.cnf最下面加上下面两句: 3 [mysqld] 4 skip-grant-tables 5 6 service mysql restart #重启mysql的服务
0X01 免密码登录并修改密码:
虽然还会显示让你输入密码,但是你只要回车是会直接进入mysql的控制台的。这个就是我们第一步skip-grant-tables的配置作用所在。
1 user mysql; 2 update user set Password=PASSWORD('new_password') where user='root'; #mysql5.7之前的版本 3 4 update user set authentication_string=PASSWORD('new_password') where user='root'; 5 #mysql5.7之后的版本 6 7 flush privileges; #刷新权限 8 exit #退出mysql的控制台
值得一提的是,重置密码的sql语句是区分版本的,以5.7为分水岭。无论是5.7之前还是之后的版本,我都给出了语句。5.7以5.7以上的版本用一样的语句。
0X02 删除添加的配置并重新启动mysql服务:
1 service mysql restart 重启mysql服务