zoukankan      html  css  js  c++  java
  • mysql密码忘记如何恢复

    1. 首先找到mysql的安装目录, 找到.ini 配置文件,在其中在[mysqld]这个条目下加入  skip-grant-tables  保存退出后重启mysql。 重启服务可以在window的系统管理 中重新启动mysql服务进程实现。或者:   

    点击“开始”->“运行”(快捷键Win+R)。

      2.启动:输入 net stop mysql

      3.停止:输入 net start mysql

    2.  然后就可以不输入密码进行登录了。这时候在cmd里面输入mysql -u root -p就可以不用密码登录了,出现password:的时候直接回车可以进入,不会出现ERROR 1045 (28000),但很多操作都会受限制,因为我们不能grant(没有权限)。按下面的流程走(红色部分为输入部分,粉红色的是执行后显示的代码不用输入):

    3.  进入mysql数据库:

        mysql> use mysql;

    4.  2.给root用户设置新密码,蓝色部分自己输入:
    mysql> update user set password=password("新密码") where user="root";
    Query OK, 1 rows affected (0.01 sec)
    Rows matched: 1 Changed: 1 Warnings: 0

    如果报错则:

    执行后报错  ERROR 1054(42S22) Unknown column 'password' in ‘field list’

    错误的原因是 5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

    update user set authentication_string=password("新密码") where user="root"

    5. 

    3.刷新数据库
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)

    4.退出mysql:
    mysql> quit
    Bye

    改好之后,再修改一下my.ini这个文件,把我们刚才加入的"skip-grant-tables"这行删除,保存退出再重启mysql就可以了。


        

  • 相关阅读:
    mybatis框架-用类映射返回结果
    ArrayLLis 线程不安 实验
    快速求幂运算笔记
    nyoj 56 阶乘中素数的个数
    求正整数n所有可能的和式的组合(如;4=1+1+1+1、1+1+2、1+3、2+1+1、2+2
    synchronize学习
    nyoj 找球号三(除了一个数个数为基数,其他为偶数,编程之美上的)
    递归判断一个数是否递增
    快速排序c++
    x&-x
  • 原文地址:https://www.cnblogs.com/qingdou/p/11701319.html
Copyright © 2011-2022 走看看