如何找回丢失的MySQL管理员密码?

MySQL & MariaDB

1 前言

经常有朋友问MySQL密码丢失了怎么办?
以下是笔者整理的一个找回MySQL管理员密码的方法。

2 实践部分

2.1 关闭数据库

/etc/init.d/mysqld stop

2.2 使用mysqld_safe命令启动数据库

mysqld_safe --skip-grant-tables

注:参数–skip-grant-tables忽略授权表启动
以下日志有助于你排错,

tail /var/log/mysqld.log

2.3 空密码登陆数据库

mysql -uroot -p

注:直接回车

2.4 修改root密码

update mysql.user
set password=password('newpassword')
where user='root' and host='localhost';
exit

2.5 重启数据库

/etc/init.d/mysqld restart

注:有时候可能要强制杀死MySQL进程再启动,

ps -ef | grep mysql
kill -9 17033
/etc/init.d/mysqld start
没有评论

发表评论

MySQL & MariaDB
如何测试MySQL配置参数语法?

1 前言 一个问题,一篇文章,一出故事。 笔者需要修改MySQL服务端的参数,想到nginx有“ng …

MySQL & MariaDB
如何单独备份MySQL的表?

1 前言 一个问题,一篇文章,一出故事。 笔者遇到用户需要单独备份MySQL某库的某表数据的情况,想 …

MySQL & MariaDB
如何恢复MySQL特定表的数据?

1 前言 一个问题,一篇文章,一出故事。 笔者今天与DBA配合做数据恢复,DBA要求把完整的逻辑备份 …