我想在MySQL中创建一个新用户,语法如下:

create user 'demo'@'localhost' identified by 'password';

但是它会返回一个错误:

您的密码不符合当前策略要求。

我试过很多密码,但都没用。我该如何解决这个问题?


当前回答

如果你不关心密码策略。你可以通过下面的mysql命令将其设置为LOW:

mysql> SET GLOBAL validate_password.length = 4;
mysql> SET GLOBAL validate_password.policy=LOW;

其他回答

MySQL 8*

SET GLOBAL validate_password.policy=LOW

参考链接解释政策-点击这里

如果你不关心密码策略。你可以通过下面的mysql命令将其设置为LOW:

mysql> SET GLOBAL validate_password.length = 4;
mysql> SET GLOBAL validate_password.policy=LOW;

对我来说,在ubuntu新安装的mysqld上不起作用,必须添加这个:到/etc/mysql/mysql.conf.d/mysqld.cnf,否则服务器不会启动(猜测插件没有在正确的时间加载,当我只是添加它而没有plugin-load-add指令时)

plugin-load-add=validate_password.so
validate_password_policy=LOW
validate_password_length=8
validate_password_mixed_case_count=0
validate_password_number_count=0
validate_password_special_char_count=0
mysql> SET GLOBAL validate_password.policy = 0;

注意:这可能不是一个安全的解决方案。但是如果您正在测试环境中工作,只需要快速修复,甚至不关心安全设置。这是一个快速的解决方案。

当我运行“mysql_secure_installation”并将密码安全级别修改为“中等”时,同样的问题发生在我身上。

我通过运行以下程序绕过了这个错误:

mysql -h localhost -u root -p
mysql>uninstall plugin validate_password;

如果需要,请确保重新安装插件“validate_password”。