美文网首页
mysql创建用户、权限、密码修改

mysql创建用户、权限、密码修改

作者: 缘木与鱼 | 来源:发表于2019-09-30 16:07 被阅读0次

    创建用户并将all权限给demo库所有的表

    // 创建用户,将demo数据库下的所有表的所有权限都赋给demo用户
    mysql> grant all on demo.* to 'demo'@'localhost' identified by '123456';
    Query OK, 0 rows affected, 1 warning (0.01 sec)
    
    // 刷新权限,使权限生效
    mysql> flush privileges;
    Query OK, 0 rows affected (0.00 sec)
    
    // 查看用户有哪些权限 -- 显示是有所有的权限
    mysql> show grants for 'demo'@'localhost';
    +--------------------------------------------------------+
    | Grants for demo@localhost                              |
    +--------------------------------------------------------+
    | GRANT USAGE ON *.* TO 'demo'@'localhost'               |
    | GRANT ALL PRIVILEGES ON `demo`.* TO 'demo'@'localhost' |
    +--------------------------------------------------------+
    2 rows in set (0.00 sec)
    
    // 收回用户的部份权限
    mysql> revoke insert,update,select,delete on demo.* from 'demo'@'localhost';
    Query OK, 0 rows affected (0.00 sec)
    
    // 再次查看用户剩余的权限
    mysql>  show grants for 'demo'@'localhost'; 
    +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | Grants for demo@localhost                                                                                                                                                                            |
    +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | GRANT USAGE ON *.* TO 'demo'@'localhost'                                                                                                                                                             |
    | GRANT CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER ON `demo`.* TO 'demo'@'localhost' |
    +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    2 rows in set (0.00 sec)
    
    
    
    

    可能存在的问题:mysql5.7对密码的策略进行的升级:要求大小写、数字等至少八个字符,对密码策略进行修改

    // 查看密码的策略
    mysql> SHOW VARIABLES LIKE 'validate_password%';
    +--------------------------------------+-------+
    | Variable_name                        | Value |
    +--------------------------------------+-------+
    | validate_password_check_user_name    | OFF   |
    | validate_password_dictionary_file    |       |
    | validate_password_length             | 8     |
    | validate_password_mixed_case_count   | 1     |
    | validate_password_number_count       | 1     |
    | validate_password_policy             | LOW   |
    | validate_password_special_char_count | 1     |
    +--------------------------------------+-------+
    7 rows in set (0.00 sec)
    
    // 修改密码的等级为低级
    mysql> set global validate_password_policy=LOW;
    Query OK, 0 rows affected (0.00 sec)
    
    // 修改密码的长度要求为4个
    mysql> SET GLOBAL validate_password_length=4;
    Query OK, 0 rows affected (0.00 sec)
    
    // 查看密码策略是否修改成功
    mysql> SHOW VARIABLES LIKE 'validate_password%';
    +--------------------------------------+-------+
    | Variable_name                        | Value |
    +--------------------------------------+-------+
    | validate_password_check_user_name    | OFF   |
    | validate_password_dictionary_file    |       |
    | validate_password_length             | 4     |
    | validate_password_mixed_case_count   | 1     |
    | validate_password_number_count       | 1     |
    | validate_password_policy             | LOW   |
    | validate_password_special_char_count | 1     |
    +--------------------------------------+-------+
    7 rows in set (0.00 sec)
    
    

    关闭密码策略

    vim /etc/my.cnf
    
    添加  validate_password=off
    [mysqld]
    validate_password=off
    
    重启mysql服务生效
    systemctl restart mysqld.service
    
    查看密码策略显示为空
    mysql> SHOW VARIABLES LIKE 'validate_password%';
    Empty set (0.00 sec)
    
    

    当忘记密码时,修改密码的方式

    vim /etc/my.cnf
    添加
    skip-grant-tables
    
    这样会跳过密码验证,登陆后修改密码即可。
    

    相关文章

      网友评论

          本文标题:mysql创建用户、权限、密码修改

          本文链接:https://www.haomeiwen.com/subject/szqhpctx.html