Linux MySQL5.7 初始密码

Linux MySQL5.7 初始密码,第1张

本文转自 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error log的位置,如果安装的是RPM包,则默认是 /var/log/mysqld.log 。

一般可通过 log_error 设置

可通过 # grep "password" /var/log/mysqld.log 命令获取MySQL的临时密码

其中 waQ,qR%be2(5 就是密码了

用该密码登录到服务端后,必须马上修改密码,不然会报如下错误:

如果只是修改为一个简单的密码,会报以下错误:

这个其实与validate_password_policy的值有关。

validate_password_policy有以下取值:

有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。

必须修改两个全局参数

首先,修改 validate_password_policy 参数的值

这样,判断密码的标准就基于密码的长度了。这个由 validate_password_length 参数来决定。

validate_password_length 参数默认为8,它有最小值的限制,最小值为:

这些参数,默认值均为1,所以 validate_password_length 最小值为4,如果你显性指定 validate_password_length 的值小于4,尽管不会报错,但 validate_password_length 的值将设为4。如下所示:

如果修改了 validate_password_number_count , validate_password_special_char_count , validate_password_mixed_case_count 中任何一个值,则 validate_password_length 将进行动态修改。

当然,前提是 validate_password 插件必须已经安装,MySQL5.7是默认安装的。

那么如何验证 validate_password 插件是否安装呢?可通过查看以下参数,如果没有安装,则输出将为空。

步骤:

1.先停掉mysqld服务

2.可选:

进入/etc/my.cnf配置文件把 validate_password=off参数注释掉。(如果有的话)

3.执行:

4.开启mysql服务

5.直接登陆mysql -uroot

6.修改密码

7.退出后就可以再次用密码进入了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7635748.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存