mysql设置密码复杂度
环境:
OS:Centos 7
mysql:5.7.29
1.安装插件
mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.so';
Query OK, 0 rows affected (0.04 sec)
windows下安装
mysql> INSTALL PLUGIN validate_password SONAME 'validate_password.dll';
Query OK, 0 rows affected (0.04 sec)
卸载的命令(linux和windows相同):
uninstall plugin validate_password;
2.查看
select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate_password%';
show plugins;
3.查看相关参数
mysql> show variables like 'validate%';
+--------------------------------------+--------+
| 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 |
+--------------------------------------+--------+
7 rows in set (0.01 sec)
4.密码复杂度策略具体设置
学习完以上参数,我们就可以根据自身情况来具体设置密码复杂度策略了,
比如我想让密码至少 10 位且包含大小写字母、数字、特殊字符,则可以这样设置
set global validate_password_length = 10;
该配置重启后会实效,需要在配置文件加上
validate_password_length = 10
5.验证
mysql> grant select on db_test.* to 'hxl01'@'%' identified by 'mysql';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> grant select on db_test.* to 'hxl01'@'%' identified by 'm2Ysql4862';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
加上特殊符号
mysql> grant select on db_test.* to 'hxl01'@'%' identified by 'm#2Ysql4862';
Query OK, 0 rows affected, 1 warning (0.02 sec)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2019-08-07 mysql排名