• Mysql 5.7 密码策略 ERROR 1819 (HY000)


    Mysql 5.7 默认对用户密码有密码强度要求,如果指定弱密码,会提示如下:

    ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

      Mysql 5.7 中的密码强度控制,是由插件来实现的,具体是由操作系统上的文件/usr/lib64/mysql/plugin/validate_password.so 来控制(RPM安装,即默认位置)。先来了解下密码策略

      

    1. 查看默认密码策略

    • 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             | MEDIUM |
      | validate_password_special_char_count | 1      |
      +--------------------------------------+--------+

      其中,我们看到参数:validate_password_policy (即密码策略)的值是MEDIUM。官方对于该参数的值说明如下:

    policy explanation
    0 or LOW length
    1 or MEDIUM 0+numeric;lowercase/uppercase; special characters
    2 or STRONG 1+validate_password_dictionary_file

      在上面show  variables 查看到的参数,除 validate_password_policy 外,其他都是密码策略的各种控制参数。

        • validate_password_length                   ---> 密码长度,默认8
        • validate_password_mixed_case_count  ---> 大小写字母每种最少多少个,默认开启,至少1个。
        • validate_password_number_count        ---> 包含数字个数,默认 >= 1
        • validate_password_special_char_count ---> 特殊字符个数,默认 >= 1
        • validate_password_dictionary_file        ---> 密码强度控制字典路径。

    2. 密码强度验证的开启与关闭

      2.1 启用

        插件对应的库对象文件需在配置选项plugin_dir指定的目录中。

        可使用--plugin-load=validate_password.so,在server启动时载入插件,或者将plugin-load=validate_password.so写入配置文件,:

    [mysqld]
    
    plugin-load=validate_password.so
    
    validate-password=FORCE_PLUS_PERMANENT

        也可以通过如下语句在server运行时载入插件(会注册进mysql.plugins表)

    mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.so';

           2.2 关闭

        方法1) 关闭密码策略

          在/etc/my.cnf配置文件中增加:

          

    [mysqld]
    validate_password=off

          然后重启mysql

        方法2)更改密码策略

    set global validate_password_policy=0;       # 修改密码策略为low
    set global validate_password_length=0;       # 密码长度为设置为0 ,即大于0个字符的密码都可以

        方法3)初始化Mysql时不启用插件

            

    mysqld --initialize-insecure --datadir=/var/lib/mysql --basedir=/usr --user=mysql

           


    ===================
    天行健,君子以自强不息
    地势坤,君子以厚德载物
    ===================
  • 相关阅读:
    testd3p
    my open音频的
    1
    one play
    ndk ffmpeg实践2
    ndk ffmpeg实践
    Mac ndk21 交叉ffmpeg目前
    ffmpeg交叉
    and cmake 链接库及播放例子 及读文件
    更正之前《登录小案例》密码错3次15分钟内不准登录
  • 原文地址:https://www.cnblogs.com/halberd-lee/p/8538753.html
Copyright © 2020-2023  润新知