mysql忘记root密码解决方法(linux)

mysql忘记root密码解决方法(linux)

1.强制关闭mysql
# pkill mysql

2.向配置文件添加
[mysqld]
skip-grant-tables

3.重启mysql

点击(此处)折叠或打开

  1. # /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
  2. [1] 29335
  3. [root@mysql5 logs]# 180310 21:00:11 mysqld_safe Logging to '/home/mysql3306/logs/mysql-error.log'.
  4. 180310 21:00:11 mysqld_safe Starting mysqld daemon with databases from /home/mysql3306/mysql3306

4.无密码登录
# /usr/local/mysql/bin/mysql -S /tmp/mysql.sock

5.重置root密码

点击(此处)折叠或打开

  1. mysql> update mysql.user set password=password('root') where user='root';
  2. Query OK, 2 rows affected (0.03 sec)
  3. Rows matched: 4 Changed: 2 Warnings: 0
  4. mysql> flush privileges;
  5. Query OK, 0 rows affected (0.02 sec)

6.重启mysql
# pkill mysql
skip-grant-tables从配置文件注销掉
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &

7.验证
# /usr/local/mysql/bin/mysql -S /tmp/mysql.sock -uroot -p