mysql如何启用密码策略_mysql密码策略配置方法

来源:这里教程网 时间:2026-02-28 20:25:33 作者:

MySQL 启用密码策略主要通过安装和配置 validate_password 插件来实现。该插件可以限制用户设置过于简单的密码,提高数据库安全性。以下是具体配置方法。

1. 检查 validate_password 插件是否已安装

登录 MySQL 后执行以下命令查看插件状态:

SELECT PLUGIN_NAME, PLUGIN_STATUS FROM information_schema.PLUGINS WHERE PLUGIN_NAME LIKE '%validate%';

如果返回结果中 PLUGIN_STATUS 为 ACTIVE,说明插件已启用。若未安装或未启用,继续下一步。

2. 安装 validate_password 插件

在 MySQL 命令行中执行:

INSTALL PLUGIN validate_password SONAME 'validate_password.so';

安装完成后再次检查插件状态确认是否激活。

3. 配置密码策略级别

MySQL 的密码策略由 validate_password_policy 参数控制,支持以下等级:

0 或 LOW:只检查长度(至少8位) 1 或 MEDIUM:检查长度、数字、大小写字母、特殊字符 2 或 STRONG:在 MEDIUM 基础上增加字典文件检查(需指定字典)

设置策略级别示例(设为 MEDIUM):

SET GLOBAL validate_password.policy = 1;

4. 调整相关参数(可选)

根据需要修改以下常用参数:

validate_password.length:最小密码长度(默认8) validate_password.number_count:至少包含的数字个数 validate_password.mixed_case_count:至少包含的大写和小写字母个数 validate_password.special_char_count:至少包含的特殊字符个数

例如,设置密码最少12位且至少包含2个数字:

SET GLOBAL validate_password.length = 12;
SET GLOBAL validate_password.number_count = 2;

5. 持久化配置(重启生效)

上述 SET 命令仅在当前会话有效。要永久生效,需将配置写入 MySQL 配置文件(如 my.cnf 或 my.ini):

[mysqld]
validate_password.policy = MEDIUM
validate_password.length = 8
validate_password.number_count = 1
validate_password.mixed_case_count = 1
validate_password.special_char_count = 1

保存后重启 MySQL 服务使配置永久生效。

基本上就这些。配置完成后,创建或修改用户密码时就会受到策略限制,避免使用弱密码。注意:高版本 MySQL(如 8.0+)默认可能已启用该插件,但策略较宽松,建议按实际安全需求调整。不复杂但容易忽略的是持久化配置,别忘了写入配置文件。

相关推荐

热文推荐