zoukankan      html  css  js  c++  java
  • 第二十节:MySQL修改/忘记密码的解决方案(Linux和Windows)

    一. 修改密码指令

    1. 说明

     这里是以MySQL5.7为例,修改密码,这里指的是能用root连接上MySQL,修改自身密码或者其它账号密码 。(与下面的忘记密码不同哦)

    2. 修改方法

     首先要链接上mysql,进入mysql命令行界面,链接指令:【mysql -uroot -p123456】。

    -- 方案1:通过指令修改root的密码
    set password for root@localhost = password('123456');
    
    --方案2:通过指令修改root的密码
    ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
    
    --方案3:直接修改对应表
    update mysql.user set authentication_string = password('123456') where user='root';

     注:对于方案3,修改表的方式,mysql5.7及以上版本用的是 authentication_string 字段存储密码,之前版本用的是password存储密码,所以5.7以前的版本方案的代码如下:

    update mysql.user set password= password('123456') where user='root';

    部分指令截图: 

    二. Linux下忘记密码

    MySQL5.7为例

    1. 修改配置,使其免密码登录

    (1). 找到mysql的配置文件 my.cnf,一般位于/etc/my.cnf (也可能位于/etc/mysql/my.cnf),在开头增加1句话:skip-grant-tables ,如下图:

    (2). 重启mysql服务

       【stystemctl restart mysqld】

    发现重启失败:

    解决方案:

    (1). 要去掉之前配置文件中的添加的密码策略配置

    (2). 可能还需要:(上面改完后还是报同样的错的时候,再执行下面的命令)

    ls -ld /var/run/mysqld/
    chown mysql.mysql /var/run/mysqld/

    参考:https://www.jb51.net/article/81465.htm

    重新启动,重启成功。

    2. 修改密码

     通过指令mysql -uroot -p】,敲击回车,直接登录成功。然后运行指令,进行密码修改,如下图:

    update mysql.user set authentication_string = password('123456') where user='root';  
    --刷新(作用是不用重启DB服务上述指令就生效)
    flush privileges;


    3. 还原配置

     退出后删掉原配置文件中的 skip-grant-tables,重启mysql,进行登录。

    4. 测试 

      重新登录【mysql -uroot -p123456

    三. Windows下忘记密码

    MySQL5.7为例,套路和上面Linux是一样的

    1. 配置跳过密码登录

     找到配置文件my.ini,它位于数据存储目录下,eg:D:ProgramDataMySQLMySQL Server 5.7my.ini ,增加 skip-grant-tables,如下图,然后重启mysql服务。【net stop mysql】【net start mysql】

    2. 连接服务,修改密码

     通过指令【mysql -uroot -p】,敲击回车,直接登录成功。然后运行指令,进行密码修改,如下图:

    update mysql.user set authentication_string = password('123456') where user='root';  
    --刷新(作用是不用重启DB服务上述指令就生效)
    flush privileges;

    3. 恢复原配置,重启服务

     退出后删掉原配置文件中的 skip-grant-tables,重启mysql,进行登录。

    4. 进行测试,大功告成

     重新登录【mysql -uroot -p123456

    !

    • 作       者 : Yaopengfei(姚鹏飞)
    • 博客地址 : http://www.cnblogs.com/yaopengfei/
    • 声     明1 : 如有错误,欢迎讨论,请勿谩骂^_^。
    • 声     明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权利。
     
  • 相关阅读:
    直击 KubeCon 2019 现场,阿里云 Hands-on Workshop 亮点回顾
    分享 KubeCon 2019 (上海)关于 Serverless 及 Knative 相关演讲会议
    MaxCompute 费用暴涨之新增SQL分区裁剪失败
    UI2CODE复杂背景无法识别?闲鱼工程师这样打造高准确率方案
    阿里云发布边缘容器,云边端一体化时代来临
    中间件性能挑战赛上线了两大黑科技,是高手就盘它!!
    MaxCompute 费用暴涨之存储压缩率降低导致SQL输入量变大
    通知: Spring Cloud Alibaba 仓库迁移
    MaxCompute 项目子账号做权限管理
    性能压测工具选型对比
  • 原文地址:https://www.cnblogs.com/yaopengfei/p/13798785.html
Copyright © 2011-2022 走看看