• MySQL 5.7 弱密码限制


    MySQL版本从5.5升级到5.7之后,有一些不习惯,比如强制使用复杂密码。在我的VPS上面每次登录MySQL都要输入复杂难记的密码,安全方面有防火墙限制。
    如何破解掉强密码的限制。

    修改当前登录的密码
    老的修改方式:

    mysql> SET PASSWORD=PASSWORD('Root1234@');
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    mysql> FLUSH PRIVILEGES;
    Query OK, 0 rows affected (0.00 sec)
    

    新的修改方式:

    mysql> SET password='Root1234@';
    或者可以这样写
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
    

    如果密码设置太简单,MySQL也会报错:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements。因为MySQL5.7默认安装了validate_password插件

    mysql> SHOW VARIABLES LIKE 'vali%';
    +--------------------------------------+--------+
    | Variable_name                        | Value  |
    +--------------------------------------+--------+
    | 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      |
    +--------------------------------------+--------+
    6 rows in set (0.00 sec)
    

    5.7初始化后,默认会安装这个插件,若没有安装,则SHOW VARIABLES LIKE 'vali%'则会返回空。
    对应参数的value值也为默认值,以下是这些值的解释

    validate_password_length 8 # 密码的最小长度,此处为8。
    validate_password_mixed_case_count 1 # 至少要包含小写或大写字母的个数,此处为1。
    validate_password_number_count 1 # 至少要包含的数字的个数,此处为1。
    validate_password_policy MEDIUM # 强度等级,其中其值可设置为0、1、2。分别对应:
    【0/LOW】:只检查长度。
    【1/MEDIUM】:在0等级的基础上多检查数字、大小写、特殊字符。
    【2/STRONG】:在1等级的基础上多检查特殊字符字典文件,此处为1。
    validate_password_special_char_count 1 # 至少要包含的个数字符的个数,此处为1。

    想要关闭这个插件,则在配置文件中加入以下并重启mysqld即可:

    [mysqld]
    validate_password=off
    

    重启mysqld后通过SHOW PLUGINS可以查到:

    +-------------------+----------+-------------------+----------------------+-----+
    | validate_password | DISABLED | VALIDATE PASSWORD | validate_password.so | GPL |
    +-------------------+----------+-------------------+----------------------+-----+
    

    参考

    MySQL 5.7 初始密码和密码复杂度问题

  • 相关阅读:
    c# 合并byte数组
    DataGridView扩展方法行号、全选、导出到Excel(引用excel组件、生成html两种方式)
    c#利用zlib.net对文件进行deflate流压缩(和java程序压缩生成一样)
    TSQL查询笔记4: FROM T1,T2与联接的区别
    “菜鸟”程序员和“大神”程序员差距在哪里
    JAVA:模板方法模式
    Windows检测到一个硬盘问题?
    照我思索,你的电脑百毒不侵 (转)
    JAVA:多态
    HTML与CSS(图解4):表格
  • 原文地址:https://www.cnblogs.com/trunkslisa/p/9494844.html
Copyright © 2020-2023  润新知