mysql忘记root密码怎么办,几个简单操作步骤找回mysql密码

1.修改MYSQL登录设置(vim /etc/my.cnf),添加一句:skip-grant-tables

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
symbolic-links=0

skip-grant-tables

2.重启MYSQL :/etc/init.d/mysqld restart 或systemctl restart mariadb

3.登录并修改MYSQL的root密码

[root@linux-node ~]# mysql
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 2
Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, 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> 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 password=password("000000") 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.01 sec)

4.编辑/etc/my.cnf配置文件,删除之前加的那一句"skip-grant-tables"

5.重启MYSQL:/etc/init.d/mysqld restart  或  systemctl restart mariadb

6.用root用户登录数据库

[root@linux-node ~]# mysql -uroot -p000000
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 3
Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, 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.

原文地址:https://www.cnblogs.com/liuhui-xzz/p/10322008.html