mysql 5.7 忘记root密码解决办法

因为流程的不完善,安装好的mysql数据库信息,没有及时记录,时间一久,就忘记了root密码。没有root密码,我们无法通过root用户连接到数据库,也无法通过客户端执行alter user或set password等命令来重置密码。这时给出两种方案来重设root密码。

[root@c79 ~]# mysql -uroot -p          #无法登录
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

一、先强制停止数据库

通过ps找到mysql的进程号

# ps aux |grep mysql
mysql      1603  0.1  4.6 1123408 185384 ?      Sl   09:32   0:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
root       1637  0.0  0.0 112812   972 pts/0    R+   09:37   0:00 grep --color=auto mysql

根据pid号,杀掉mysql

注意1637的PID号,不是mysql的进程。

kill -9 1603

二、修改my.cnf文件

cp /etc/my.cnf /etc/my.cnf.bak
echo "skip-grant-tables" >> /etc/my.cnf

三、重启mysql

systemctl stop mysqld
systemctl start mysqld

四、 登录mysql,并修改密码

#登录
[root@c79 ~]# mysql -uroot -p              #登录命令
Enter password:                            #直接回车
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.44 MySQL Community Server (GPL)

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

#修改密码
mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> update user set authentication_string=password("liuguohua.com") where user='root';
Query OK, 1 row affected, 1 warning (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

五、恢复my.cnf文件

sed -i '/skip-grant-tables/d' /etc/my.cnf

六、重启mysql

systemctl stop mysqld
systemctl start mysqld

七、登录测试

一定要登录测试,因为前一步,已设置为跳过密码了,如果在新建用户时,没有严格限制登录IP地址,有可能别人扫描到mysql,通过远程root,免密码的方式登录进来了,搞破坏。

这里属于Linux云计算领域知识,有任何问题,欢迎点击右边的联系信息,与我们沟通,协助是免费的。

声明:欢迎大家光临本站,学习IT运维技术,转载本站内容,请注明内容出处”来源刘国华教育“。如若本站内容侵犯了原著者的合法权益,请联系我们进行处理。