忘记MySQL的root密码的解决方法,下面是详细的操作步骤。
(1)修改配置文件 my.cnf,在配置文件 [mysqld] 下添加 skip-grant-tables,重启MySQL服务即可免密码登录
其中 --skip-grant-tables 选项的意思是启动 MySQL 服务的时候跳过权限表认证。 启动后,连接到 MySQL 的 root 将不需要口令(危险)。
[mysqld] skip-grant-tables
(2)用空密码的 root 用户连接到 MySQL,并且更改 root 口令:
[root@iZ235wguph2Z www]# mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 295 Server version: 5.0.56-log Source distribution Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved. 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> update user set password=password('123456') where User='root'; ERROR 1046 (3D000): No database selected mysql> use mysql; Database changed mysql> update user set password=password('123456') where User='root'; Query OK, 3 rows affected (0.00 sec) Rows matched: 3 Changed: 3 Warnings: 0 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> exit
(3)到 my.cnf 中删除 skip-grant-tables 选项,然后重启MySQL服务。
至此MySQL数据库root用户的密码修改完毕。