• Mysql—修改用户密码(重置密码)


    1、登录mysql

    [root@localhost ~]# mysql -uroot -p123456
    [root@localhost ~]# mysql -hlocalhost -uroot -p123456

    如果忘记密码,则跳过MySQL的密码认证过程。步骤如下:

    • 修改Mysql配置文件:vi /etc/my.cnf(注:windows下修改的是my.ini)。在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程。
    • 重启Mysql:
    • 进入Mysql:[root@localhost ~]# mysql -uroot -p

    2、使用mysql数据库,从user表中查看主机,用户名,密码

    -- 使用mysql数据库
    mysql> use mysql;
    -- 查询主机用户名密码:5.7版本之前的
    mysql> select host,user,plugin,password from user;
    -- 查询主机用户名密码:5.7版本之后的,包括5.7
    mysql> select host,user,plugin,authentication_string from user;
    mysql> select host,user,plugin,authentication_string from userG;
    mysql> select host,user,plugin,authentication_string from mysql.user;

    3、修改密码,刷新一下权限

    mysql> update user set password=password("新密码") where user="root";
    mysql> flush privileges;
    mysql> quit

    上面修改密码是在5.7版本之前的。若是5.7版本之后的(包括5.7),没有password这个字段了,则修改方法如下:

    mysql> alter user "root"@"localhost" identified by "新密码";  --方法1
    mysql> update user set authentication_string=password("新密码") where user="root";  -- 方法2
    mysql> flush privileges;
    mysql> quit

    4、如果以上不能解决密码修改,则使用下面方法

    mysql> use mysql;
    mysql> alter user "root"@"localhost" identified with mysql_native_password by "新密码";
    mysql> flush privileges;

    修改加密规则:mysql> alter user "root"@"localhost" identified by 'password' PASSWORD EXPIRE NEVER; 

    如果执行以上的操作并没有解决,请再把default_authentication_plugin=mysql_native_password添加到配置中。

    5、再去编辑一下my.cnf配置文件,去掉skip-grant-tables。

    6、重启Mysql,用你修改后的密码登录Mysql。

      

  • 相关阅读:
    shell脚本day06-sed
    shell脚本day05-交互式输入与for语句
    shell脚本day04-if语句
    shell脚本day04-grep与正则表达式
    shell脚本day03-编程原理
    shell脚本day02-重定向与管道符
    编程原理大致介绍
    进程管理
    Linux网络
    shell脚本--grep以及正则表达式
  • 原文地址:https://www.cnblogs.com/childking/p/14124820.html
Copyright © 2020-2023  润新知