网站首页 文章专栏 ubuntu16.04 mysql 5.7.23 忘记root密码的应对方案
虽然网络上已经有很多mysql重置root密码的方法,但是大多不能准确适配自己的软件环境:ubuntu 16.04 + mysql 5.7。 他们提到的/etc/my.cnf
在我的环境中压根不存在,并且修改密码时所用的user
表字段名也有差异,在一些探索后给出一个解决方案。
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
在[mysqld]
后面添加skip-grant--tables
sudo /etc/init.d/mysql restart
此时不用输入密码就可以登陆mysql的root账号,运行如下命令修改root密码。
use mysql; update user set authentication_string=PASSWORD("这里输入你要改的密码") where User='root'; #更改密码 update user set plugin="mysql_native_password"; #如果没这一行可能也会报一个错误,因此需要运行这一行 flush privileges; #更新所有操作权限
skip-grant--tables
去除之后再登陆mysql就需要密码验证了