Redirecting to /bin/systemctl start mysqld.service Job for mysqld.service failed because the control
我是用rpm安装的mysql方式。在安装好mysql5.7后,使用临时密码登录后系统要求强制修改密码才行,没办法,只能修改下密码了,但是想用123等简单的数字作为密码方便记忆(生产环境一定要复杂安全,自己测试的环境可以简单),百度一下,修改my.cnf配置文件即可实现用简单密码登录。
注意!用rpm安装后直接修改my.cnf文件再启动报错了,建议先用临时密码登录后,flush privileges一下;
必须使用flush privileges的两种情况1、改密码。2、授权超用户。
看过其他帖子的方法,在my.cnf设置validate_password_length等几个配置即可。然后重启mysql。
但是!!此时出现问题了!用命令启动mysql出现Redirecting to /bin/systemctl start mysqld.service
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
出现错误不要慌,去mysqld.log日志查看原因(还有error_log等日志,综合查看),
如图所示,我是百度看了其他网友对密码策略的配置修改后,重新启动mysql就出错了,很显然是my.cnf的配置文件的内容需要修改正确才能运行。首先查看第一次安装后系统分配的临时密码,grep password /var/log/mysqld.log ,然后登录mysql。
在sql命令行里面运行 show variables like '%password%"; 显示如下:
可以看到,很多网友帖子写的都是 validate_password_length 这个variable,但是查出来的是validate_password.length,他俩的区别一个是下划线“_”,一个是点“.”,所以在my.cnf中配置后重启mysql失败了,系统不识别这个配置,接着去修改my.cnf文件,改为识别的变量名即可:
添加图中四项,即可对密码策略修改。
validate_password.policy=LOW或者0 ,这个表示密码的policy等级
然后密码长度我设置为最少3位;
特殊字符为0,表示密码中可以不设置特殊字符,其他几项配置可百度查阅,配置好以后,就能够设置123等简单密码了。
写文章不易,个人踩坑心得,转载请贴出链接,谢谢!