mysql - ERROR 1819 (HY000) 您的密码不符合当前政策要求
Posted
技术标签:
【中文标题】mysql - ERROR 1819 (HY000) 您的密码不符合当前政策要求【英文标题】:mysql - ERROR 1819 (HY000) Your password does not satisfy the current policy requirements 【发布时间】:2020-09-15 13:00:35 【问题描述】:有很多关于解决这个问题的帖子,但是,它们都不适合我。我在我的计算机上以 root 身份登录 mysql。使用$ mysql -u root -p
登录并输入我的密码后,我输入并尝试使用CREATE USER 'test'@'localhost';
创建用户,但随后出现错误:
ERROR 1819 (HY000):您的密码不符合当前政策要求
使用SHOW VARIABLES LIKE 'validate_password%';
打印我的变量后,我得到:
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password.check_user_name | ON |
| 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 |
+--------------------------------------+--------+
我已尝试使用this 解决方案以及this,但是,当尝试使用UNINSTALL plugin validate_password;
卸载验证密码时,我得到:
ERROR 1305 (42000): PLUGIN validate_password 不存在
每当我尝试设置变量时,我都会收到错误:
ERROR 1193 (HY000):未知系统变量“validate_password_policy”
上面的引号之间可以换成任何变量。 我以 root 身份正确登录。并开始为此失去理智。
感谢您的帮助。
编辑:
我试图在this comment 之后找到我的my.cnf
文件,但我发现它对文件的任何编辑都会导致套接字错误:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
我也尝试通过自制软件卸载并重新安装 MySQL,但错误仍然存在,符合政策要求。
【问题讨论】:
你试过直接在my.cnf/my.ini中添加变量设置吗? 我的电脑 (macOS) 说我有一个my.cnf
,但我无法在所述目录中找到它们。例如,按照命令$ mysql --verbose --help | grep my.cnf
我得到/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
但是当导航到目的地时我找不到它们来打开文件。例如:cat /etc/my.cnf
给我:cat: my.cnf: No such file or directory
试试这个链接:***.com/questions/10757169/… .. 看看它是否有帮助
我已经尝试过并进行了正确的修改,但是当我这样做时,套接字存在连接问题,并且不允许任何连接。我也尝试过删除 MySQL 并通过自制软件重新安装它,但仍然得到与上述相同的错误。我不知道发生了什么。
【参考方案1】:
所以错误是我无法在没有密码的情况下创建用户:mysql> CREATE USER 'test'@'localhost';
这将失败,因为我无法在不说明密码的情况下创建用户,即使我稍后会分配它我也需要创建 and 设置密码。
所以:
mysql> CREATE USER 'test'@'localhost' IDENTIFIED BY 'Password1';
Password1
应替换为您想要的密码。
【讨论】:
【参考方案2】:在尝试了一些简单的密码后,我得到了这个错误,然后用这个SHOW VARIABLES LIKE 'validate_password%';
检查了variables
表
输出显示策略已经设置为low
,那么我所做的只是按照这里提到的内容来构建密码,就像使用至少8个字符,至少1个数字,混合大小写字母等。然后执行命令'ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'mysql0_rT';
,然后就没有错误了。
【讨论】:
以上是关于mysql - ERROR 1819 (HY000) 您的密码不符合当前政策要求的主要内容,如果未能解决你的问题,请参考以下文章
ERROR 1819 (HY000): Unknown error 1819
mysql5.7设置简单密码报错ERROR 1819 (HY000): Your password
mysql 无法授予用户权限,出现错误:ERROR 1819 (HY000): Your password does not meet the current policy requirements
mysql错误详解(1819):ERROR 1819 (HY000): Your password does not satisfy the current policy requirements(示
mysql 修改密码提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql5.7 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements