似乎我无意中在MySQL 5.7中加载了密码验证插件。这个插件似乎强制所有密码遵守某些规则。

我想把这个关了。

我已经尝试按照这里的建议更改validate_password_length变量,但没有用。

mysql> SET GLOBAL validate_password_length=4;
Query OK, 0 rows affected (0.00 sec)

mysql> SET PASSWORD FOR 'app' = PASSWORD('abcd');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

我想要么卸载插件或中性它以某种方式。


当前回答

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'organizer'@'localhost'  WITH GRANT OPTION;

CREATE USER 'username'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'organizer'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

不需要停止/启动mysql

其他回答

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'organizer'@'localhost'  WITH GRANT OPTION;

CREATE USER 'username'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'organizer'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

不需要停止/启动mysql

我在Ubuntu 18.04的Mysql上遇到了一个问题。当我需要创建一个新用户时,策略总是高的。

我想出了如何禁用的方法,为将来来调查的同事设置为低。

以root用户登录mysql服务器

mysql -h localhost -u root -p

设置新的验证类型

SET GLOBAL validate_password_policy=0; //For Low

重新启动mysql

sudo service mysql restart

对于mysql 8.0,禁用密码验证组件的命令是:

UNINSTALL COMPONENT 'file://component_validate_password';

要重新安装它,命令是:

INSTALL COMPONENT 'file://component_validate_password';

如果您只是想更改密码验证插件的策略:

SET GLOBAL validate_password.policy = 0;   # For LOW
SET GLOBAL validate_password.policy = 1;   # For MEDIUM
SET GLOBAL validate_password.policy = 2;   # For HIGH

为了禁用mariadb-10.1.24 (Fedora 24)中的密码检查,我必须注释掉/etc/my.cnf.d/cracklib_password_check.cnf文件中的一行:

;plugin-load-add=cracklib_password_check.so

然后重新启动mariadb服务:

systemctl restart mariadb.service

使用命令登录到您的MariaDB服务器

mysql -u root

or

mysql -u root -pYOURPASSWORD
UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root' AND plugin = 'unix_socket';

and

FLUSH PRIVILEGES;