• mysql修改用户密码


    修改自己的密码(root用户,其它用户应该也差不多) 
    方法一:

    [root@localhost /]# mysqladmin -u root -p password "root"                           #修改密码为root
    Enter password:                                                                     #输入旧密码
    [root@localhost /]# mysql -uroot -p                                                 #尝试使用旧密码登录
    Enter password: 
    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
    [root@localhost /]# mysql -uroot -p                                                 #输入新密码root登录
    Enter password: 
    Welcome to the MariaDB monitor.  Commands end with ; or g.
    Your MariaDB connection id is 19
    Server version: 5.5.52-MariaDB MariaDB Server
    
    Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    MariaDB [(none)]> 
    
    

    方法二: 
    在mysql.user中使用update更新密码 
    方法三: 
    或者进入mysql后,使用set修改密码

    [root@localhost /]# mysql -uroot -p                         #使用旧密码root登录
    Enter password: 
    Welcome to the MariaDB monitor.  Commands end with ; or g.
    Your MariaDB connection id is 19
    Server version: 5.5.52-MariaDB MariaDB Server
    
    Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    MariaDB [(none)]> set password=password("123456");                  #修改密码为123456,我一直很好奇为什么密码必须用password扩起来,后来知道了,新密码必须用password来加密
    Query OK, 0 rows affected (0.00 sec)
    
    MariaDB [(none)]> quit
    Bye
    [root@localhost /]# mysql -uroot -p                                     #使用新密码123456登录
    Enter password: 
    Welcome to the MariaDB monitor.  Commands end with ; or g.
    Your MariaDB connection id is 20
    Server version: 5.5.52-MariaDB MariaDB Server
    
    Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    MariaDB [(none)]> 
    

    root用户修改指定用户密码

    方法一

    MariaDB [(none)]> set password for 'bp'@'localhost'=password("123456");
    Query OK, 0 rows affected (0.01 sec)
    

    方法二:

    MariaDB [(none)]> update mysql.user set password=password("123") where user='bp' and host='localhost';                          #使用update修改密码,修改成功后,我打开另一个终端使用该用户登录数据库,发现无法使用新密码登录,但使用旧密码可以登录
    Query OK, 1 row affected (0.00 sec)
    Rows matched: 1  Changed: 1  Warnings: 0
    
    MariaDB [(none)]> select user,host from mysql.user;             #因为报错信息里面包含localhost,于是查看用户表信息有没有错,遗憾的是没有
    +---------+-----------------------+
    | user    | host                  |
    +---------+-----------------------+
    | aa      | %                     |
    | aaa     | %                     |
    | root    | 127.0.0.1             |
    | root    | ::1                   |
    |         | localhost             |
    | aa      | localhost             |
    | bb      | localhost             |
    | bp      | localhost             |
    | ggo     | localhost             |
    | my      | localhost             |
    | mytest  | localhost             |
    | newuser | localhost             |
    | nome    | localhost             |
    | root    | localhost             |
    |         | localhost.localdomain |
    | root    | localhost.localdomain |
    +---------+-----------------------+
    16 rows in set (0.00 sec)
    
    MariaDB [(none)]> flush privileges;                     #后来想起来,是不是还要刷新权限。刷新之后,使用新密码可以登录
    Query OK, 0 rows affected (0.00 sec)
    

    方法三:grant修改密码

    MariaDB [mytest]> grant select on mytest.test to 'bp'@'localhost' identified by 'linux';
    Query OK, 0 rows affected (0.05 sec)                #这个不需要刷新权限。。


    mysql5.7修改密码
    cat /var/log/mysqld.log|grep 'temporary password'
    alter user 'root'@'localhost' identified by 'root';
    忘记密码(需要重启服务器)
    在/etc/my.cnf的mysqld里面增加skip-grant-tables (5.7以前的应该是skip-grant)
    重启mysqld

    mysql> update mysql.user set authentication_string=password(',,,abc123...') where user='root';  (旧版的应该是update mysql.user set password=password(',,,abc123...') where user='root';)
    Query OK, 1 row affected, 1 warning (0.00 sec)
    Rows matched: 1 Changed: 1 Warnings: 1

    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)

    mysql> quit

    重启服务器

  • 相关阅读:
    许可管理工具
    浅谈MapControl控件和PageLayoutControl控件
    通过Bresenham算法实现完成矢量线性多边形向栅格数据的转化
    四叉树算法原理与实现
    OC系列foundation Kit基础-NSNumber
    OC系列foundation Kit基础-NSdictionary
    OC系列foundation Kit基础-NSMutableArray
    OC系列foundation Kit基础-NSArray
    OC系列foundation Kit基础-NSMutableString
    OC系列foundation Kit基础-NSString
  • 原文地址:https://www.cnblogs.com/biaopei/p/8376929.html
Copyright © 2020-2023  润新知