zoukankan      html  css  js  c++  java
  • MySQL重置密码

    MySQL重置密码

    可能由于各种原因,我们不小心丢掉了MySQL密码,要用的时候无法登陆了,只能重置密码了!该配置修改文档是在Linux Ubunt环境下进行的,其他操作系统亦可作为参考,原理一样!

    1. 修改MySQL的配置文件,跳过登录时的权限验证

      CentOS是在 /etc/my.cnf
      Ubunt的mysql配置文件路径:
      sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

       #在[mysqld]下追加上 skip-grant-tables
       [mysqld]
           ...
       skip-grant-tables
      
    2. 重启mysql服务使配置生效

      sudo service mysql restart

    3. 重启完mysql服务之后我们再次执行mysql登录命令,会发现不用输入密码即可登录.

      mysql -u root -p

      回车完会提示输入密码,不用输密码直接回车即可登录

    4. 重置root账户密码

      重置root密码为空

      update mysql.user set authentication_string="" where user="root";

      重置 root 用户的密码为空(5.7 之前为 password 字段)

      修改root密码

      update mysql.user set authentication_string=password("pswd") where user="root";

      在重置 root 密码的同时,也可以设置默认密码。不过密码不能为明文,必须使用 password() 函数加密

    5. 刷新权限表

      flush privileges;

    重置root密码,刷新权限表之后退出mysql命令行,将刚在配置文件中添加的跳过权限验证的配置命令删除.最后重启mysql服务即可用root用户密码登录!

    1. 删除添加的跳过权限验证配置命令,重启mysql服务

      sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

       #删除或注释刚才在[mysqld]下追加 skip-grant-tables
       [mysqld]
           ...
       #skip-grant-tables
      

    重启mysql服务

    sudo service mysql restart
    

    出于安全考虑我们不会让MySQL用户无密码即可登录,要在重置完密码后为root账户设置密码

    设置密码要把配置文件中的跳过权限验证命令去掉以后重启mysql服务登录设置才行,不然会提示没有验证,无权限操作

    方法1:

    以 root 身份登录 mysql后,再使用 set password 命令修改密码:
    set password for root@localhost = password("new_password");
    

    方法2:

    mysqladmin -u root -p password "new_password"
    #执行该命名后会提示输入原密码,输入正确后即可修改。
    

    方法3:

    update mysql.user set authentication_string=password("pswd") where user="root";
    #在重置 root 密码的同时,也可以设置默认密码。不过密码不能为明文,必须使用 password() 函数加密
    
    使用该方法之后需刷新权限列表:
    flush privileges;
  • 相关阅读:
    字符数组初始化
    makefile学习笔记
    convert between char* and std::string
    mysql 学习笔记(二)
    面试中的Singleton (转)
    由谈退格键的实现来学习字符编码
    mysql 学习笔记(一)
    Eclipse插件的安装方法
    Http状态码
    net use命令
  • 原文地址:https://www.cnblogs.com/sungeng/p/8351630.html
Copyright © 2011-2022 走看看