Linux下mysql登录密码忘记,需要修改配置文件,跳过密码验证,这样登录的时候,不同输入密码,直接回车即可登录,然后重置密码,设置完成后,退出mysql, 然后将配置文件中跳过密码的代码删除,保存退出,重启mysql服务。
注意:此方法对离线安装比较适用,如果要修改在线安装版本的配置文件,可能路径不一样,但是修改操作的代码是一样的。
- 打开mysql 的配置文件
vi /usr/local/mysql/my.cnf
进入配置文件编辑模式,添加取消密码验证:skip-grant-tables,保存配置文件,重启mysql 服务,然后再次登录,这时候不需要密码,可以直接空格登录。
重启mysql 服务,然后登录
service mysql restart
# 登录(由于/etc/my.cnf中设置了取消密码验证,所以此处密码任意)
/usr/local/mysql/bin/mysql -u root –p
- 登录成功后,修改密码
# 操作mysql数据库
use mysql;
# 修改密码
update user set authentication_string=password('你的密码') where user='root';
# 刷新权限
flush privileges;
# 退出mysql
exit;
- 重置密码
# 编辑配置文件
vi /usr/local/mysql/my.cnf
将my.cnf中的skip-grant-tables删除;
# 登录
/usr/local/mysql/bin/mysql -u root -p ALTER USER 'root'@'localhost' IDENTIFIED BY '修改后的密码';
# 刷新权限
flush privileges;
# 退出mysql
exit;
4、重启mysql 服务,然后登录
service mysql restart