您可能已经注意到,在为MySQL数据库服务器的root设置密码时,系统会提示您启用“验证密码”组件。成都联想服务器经销商如果启用,验证密码组件将自动检查给定密码的强度,并强制用户只设置足够安全的密码。如果您提供了一个简单的弱密码,您将会遇到类似于“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements.”这样的错误。从技术上讲,这实际上不是一个错误。这是一个内置的安全机制,根据当前密码策略的要求通知用户只提供复杂的强密码。
让我给你看一个例子。我使用以下命令以root用户身份登录到MySQL服务器:
$ mysql -u root -p
使用弱密码创建数据库用户:
mysql create user ostechnix@localhost identified by mypassword;
我遇到以下错误:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
看到了吗?验证密码组件不允许我创建一个弱密码的用户。您将一直收到此错误提示,直到密码满足当前密码策略的要求,或者禁用Validate password组件。
修复– MySQL错误1819(HY000):您的密码不符合当前的策略要求
启用“验证密码”时,将强制实施三个级别的密码验证策略:
低强度 = 8个字符。
中等强度 = 8,数字,大小写混合和特殊字符。
高强度 = 8,数字,大小写混合,特殊字符和词典文件。
根据这些策略级别,您需要设置适当的密码。例如,如果密码验证策略设置为“中”,则必须设置密码,密码至少包含8个字符,包括数字,小写字母,大写字母和特殊字符。
首先,我们需要找到当前的密码策略级别。为此,请运行以下命令以显示“密码验证插件”系统变量:
mysql SHOW VARIABLES LIKE validate_password%;
大家可以看到,目前强制执行的密码等级是Medium,中等强度。所以我们的密码应该是8个字符长,有数字、混合大小写和特殊字符。
我将使用命令设置这个密码--Password123#@!
mysql create user ostechnix@localhost identified by Password123#@!;
看到?现在可以使用了!因此,为了解决“ ERROR 1819(HY000)…”错误,您需要根据当前密码验证策略输入密码。
更改密码验证政策
您还可以通过设置较低级别的密码策略来解决“ ERROR 1819(HY000)…”。
为此,请在mysql提示符下运行以下命令:
mysql SET GLOBAL validate_password.policy = 0;
要么,
mysql SET GLOBAL validate_password.policy=LOW;
然后检查密码验证策略是否已更改为低:
mysql SHOW VARIABLES LIKE validate_password%;
现在你可以创建一个用户与弱密码如下:
mysql create user senthil@localhost identified by password;
要恢复到中级策略,只需在mysql提示符下运行以下命令:
mysql SET GLOBAL validate_password.policy=MEDIUM;
如果密码策略未更改,请从mysql提示符退出,然后从“终端”窗口重新启动mysql服务:
$ sudo systemctl restart mysql
现在应该可以了。
禁用密码验证策略
如果您想使用弱密码创建用户,只需完全禁用“验证密码”组件,然后在创建用户后重新启用它即可。
登录到MySQL服务器:
$ mysql -u root -p
要临时禁用验证密码组件,请在mysql提示符下运行以下命令:
mysql UNINSTALL COMPONENT file://component_validate_password;
使用您选择的任何密码创建用户:
mysql create user kumar@localhost identified by 123456;
最后,启用验证密码组件:
mysql INSTALL COMPONENT file://component_validate_password;
我个人不建议将策略更改为较低级别或禁用密码策略。无论是数据库用户还是普通用户,都应该使用包含8个以上字符的强密码,包括数字、混合大小写和空格字符。
成都联想服务器代理【公司名称】成都鸿盛广达科技有限公司
【代理级别】成都联想服务器总代理
【销售经理】成都鸿盛广达科技有限公司
【联系方式】座机:028-85952921 手机:13981931555
【公司地址】成都市武侯区人民南路四段一号时代数码广场A座17楼