我想在MySQL中创建一个新用户,语法如下:
create user 'demo'@'localhost' identified by 'password';
但是它会返回一个错误:
您的密码不符合当前策略要求。
我试过很多密码,但都没用。我该如何解决这个问题?
我想在MySQL中创建一个新用户,语法如下:
create user 'demo'@'localhost' identified by 'password';
但是它会返回一个错误:
您的密码不符合当前策略要求。
我试过很多密码,但都没用。我该如何解决这个问题?
当前回答
步骤1:检查默认的身份验证插件
SHOW VARIABLES LIKE 'default_authentication_plugin';
步骤2:veryfing您的密码验证要求
SHOW VARIABLES LIKE 'validate_password%';
步骤3:使用正确的密码要求设置用户
CREATE USER '<your_user>'@'localhost' IDENTIFIED WITH '<your_default_auth_plugin>' BY 'password';
其他回答
请设置满足7条MySql验证规则的密码
例如:- d_VX>N(“xn_BrD2y
让验证标准更简单一点可以解决这个问题
SET GLOBAL validate_password_length = 6;
SET GLOBAL validate_password_number_count = 0;
但建议使用强密码是正确的解决方案
注意:这可能不是一个安全的解决方案。但是如果您正在测试环境中工作,只需要快速修复,甚至不关心安全设置。这是一个快速的解决方案。
当我运行“mysql_secure_installation”并将密码安全级别修改为“中等”时,同样的问题发生在我身上。
我通过运行以下程序绕过了这个错误:
mysql -h localhost -u root -p
mysql>uninstall plugin validate_password;
如果需要,请确保重新安装插件“validate_password”。
我有同样的问题,答案就在你面前,记得当你在安装mysql的时候运行脚本
sudo mysql_secure_installation
您可以在某个地方选择想要的密码类型
密码验证策略有三种级别:
LOW长度>= 8 中等长度>= 8,数字,混合大小写,特殊字符 STRONG长度>= 8,数字,混合大小写,特殊字符和字典文件
请输入0 = LOW, 1 = MEDIUM, 2 = STRONG:
你必须给相同的策略设置密码
下面是一些密码示例: 对于类型0:abcdabcd 类型1:abcd1234 类型2:ancd@1234
有些时候,找到一个快速的解决方案是很棒的。但如果你能避免降低密码限制,它可以让你在未来的大头疼。
下一个链接来自官方文档https://dev.mysql.com/doc/refman/5.6/en/validate-password.html,在那里他们提供了一个与您的示例完全相同的示例,并解决了它。
唯一的问题是您的密码不够强,无法满足实际的最小策略(不建议删除)。所以你可以尝试不同的密码,就像你在例子中看到的那样。
在我的例子中,当有一个错误的引用时,错误就出现了:
GRANT所有database_name。* ' user1 ' @'8.10.12.2';(用户名周围的单引号错误)
vs
GRANT所有database_name。* 'user1'@'8.10.12.2';(正确)