关闭掉mysql 8和mysql5.7的密码验证插件validate_password

时间:2022-04-11 04:52:03

在mysql文档中的一段话
If you installed MySQL 5.7 using the MySQL Yum repository, MySQL SLES Repository, or RPM packages provided by Oracle, validate_password is enabled by default after you start your MySQL Server for the first time.
如果您使用MySQL Yum存储库、MySQL SLES存储库或Oracle提供的RPM包安装了MySQL 5.7,那么在第一次启动MySQL服务器后,validate_password默认是启用的。

当前我操作的环境是mysql 8,对于mysql5.7的做法是否是这样,看这篇文章的朋友可以尝试一下,文章不长,操作步骤也不多,就一个设置my.cnf文件和重启mysqld。

在文档中看到有这样一个参数,并且这个参数可以有这样的值

关闭掉mysql 8和mysql5.7的密码验证插件validate_password

 

但是在my.cnf中设置了这个值后,mysqld就启动不了了,网上很多说法都是说设置这个值,都不知道他们有没有试过的,或者说他们的这个设置在mysql 8中无效。

[mysqld]
validate_password=OFF

这时候发现只能通过set命令将值一个一个的修改,但是mysqld重启后还是恢复原状了

关闭掉mysql 8和mysql5.7的密码验证插件validate_password

 

 所以这里就试一下将所有值都写在my.cnf的[mysqld]节中

[mysqld]
validate_password.check_user_name   =OFF
validate_password.length                  =4
validate_password.mixed_case_count   =0
validate_password.number_count          =0
validate_password.policy                   =0
validate_password.special_char_count  =0

结果重启mysqld成功了,并且查询到的结果也是显示validate_password所有规则被设置了

关闭掉mysql 8和mysql5.7的密码验证插件validate_password