zoukankan      html  css  js  c++  java
  • MySQL忘记root密码的找回方法

    (1)登录到数据库所在服务器,手工kill掉MySQL进程:  

    kill ' cat /mysql-data-directory/hostname.pid'
    其中,/mysql-data-directory/hostname.pid指的是MySQL数据目录下的.pid文件,它记录了MySQL服务的进程号。
    (2)使用--skip-grant-tables选项重启MySQL服务:
    [root@iZ28dr6w0qvZ mysql]# ./bin/mysqld_safe --skip-grant-tables --user=root &
    [1] 17299
    [root@iZ28dr6w0qvZ mysql]# 151006 13:14:41 mysqld_safe Logging to '/alidata/log/mysql/error.log'.
    151006 13:14:41 mysqld_safe Starting mysqld daemon with databases from /alidata/server/mysql/data
    其中--skip-grant-tables选项的意思是启动MySQL服务的时候跳过权限表认证。启动后,连接到MySQL的root将不需要命令。
    (3)用空密码的root用户连接到MySQ,并且更新root口令:
    [root@iZ28dr6w0qvZ ~]# mysql -uroot
    Welcome to the MySQL monitor. Commands end with ; or g.
    Your MySQL connection id is 4
    Server version: 5.5.37-log MySQL Community Server (GPL)
      
    Copyright (c) 2000, 2014, 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> set password = password('ysj123');
    ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
    mysql> update mysql.user set password=password('123456') where user='root' and host='localhost';
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1 Changed: 1 Warnings: 0
     此时,由于使用了--skip-grant-tables选项启动,使用“set password”命令更改密码失败,直接更新user表的password字段后更改密码成功。
    (4)刷新权限表,使得权限认证重新生效:
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)

    (5)重新用root登录时,必须输入新口令:

    [root@iZ28dr6w0qvZ ~]# mysql -uroot
    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
    [root@iZ28dr6w0qvZ ~]# mysql -uroot -p
    Enter password:
    Welcome to the MySQL monitor. Commands end with ; or g.
    Your MySQL connection id is 8
    Server version: 5.5.37-log MySQL Community Server (GPL)
      
    Copyright (c) 2000, 2014, 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中,密码丢失后无法找回,只能通过上述方式修改密码。

    转自:http://www.cnblogs.com/chenqionghe/p/4863274.html

  • 相关阅读:
    知识图谱
    spring mvc踩坑记
    学习计划
    迷茫中看见一道曙光
    面试复习准备
    关于配置httpd2.4.18+php5.6
    notepad++ 等用正则表达式自动添加sql引号(宏)
    JDK1.8的HashMap实现原理和源码解析
    Java垃圾回收机制
    sql server 表分区
  • 原文地址:https://www.cnblogs.com/azhqiang/p/4863380.html
Copyright © 2011-2022 走看看