#检查MySQL安装目录/lib/plugin/下是否有validate_password.dll文件
Linux默认安装目录是在/usr/lib64/mysql/plugin下的validate_password.so文件
#检查是否安装插件,默认应该是空的
SELECT * FROM mysql.`plugin`
#安装插件
#windows
INSTALL PLUGIN validate_password SONAME 'validate_password.dll';
#Linux
INSTALL PLUGIN validate_password SONAME 'validate_password.so';
#卸载插件
UNINSTALL PLUGIN validate_password;
#安装后查看是否启用成功, 在name = validate_password可看到信息
SHOW PLUGINS;
#查看默认策略配置
SHOW variables LIKE 'validate_password%';
#validate_password_policy: 密码安全策略
#策略 检查规则
#0 or LOW Length
#1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
#2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file
#validate_password_dictionary_file:密码策略文件,策略为STRONG才需要,策略文件中存在的密码不得使用。
#validate_password_length:密码最少长度,经测试最小是4
#validate_password_mixed_case_count:大小写字符长度,至少1个
#validate_password_number_count :数字至少1个
#validate_password_special_char_count:特殊字符至少1个
#修改策略
SET global validate_password.policy = 0;
SET global validate_password.length = 1;#设置成功后是4
# 关闭密码复杂性策略
SET global validate_password.policy = 0;
# 设置密码复杂性要求密码最低长度为1
SET global validate_password.length = 1;
# 查看密码复杂性策略
SELECT @@validate_password.policy;
# 查看密码复杂性要求密码最低长度大小
SELECT @@validate_password.length;
#尝试修改密码
#自己选方式都可
alter user 'root'@'localhost' identified by '123456';
set password for 'root'@'localhost' = password('123456');
set password for 'root'@'%' = password('123456');
#刷新配置
flush privileges;