发现上一篇文章解决了mysql服务无法启动问题后,竟然用root用户无密码不能登录,5.7版本不能在初始化时用root无密码登录,找了很多帖子后,解决了问题。
原来在上一篇文章的mysqld –initialize方法生成的data文件里的.err文件里,可以用word打开,会有生成root的临时初始密码
打开之后找到密码:
但是这个密码用一次后就会过期不能使用了。下面我们就来改这个密码
1、先关闭mysql服务,net stop mysql
2、修改你的mysql的配置文件my.ini或者my-default.int,根据你自己的配置看修改哪个文件
3、在[mysqld]节点上加skip-grant-tables
主要作用是:跳过表中的验证,可以无密码登陆。
4、开启mysql服务(net start mysql),用可视化客户端进入mysql,我使用的可视化的客户端mysqlFront,你们可以自己去百度找。
5、打开mysql下的user表,将password_expired字段的Y改成N;主要是改变密码是否有效的,有Y/N 两种,y表示失效,n表示有效,改完以后记得保存。
6、停止mysql服务,将刚才ini文件里的skip-grant-tables删掉,重新开启服务
7、修改密码:mysqladmin -u root password root
输入原密码,即修改成功。最后一个root是新密码
密码修改成功可以登录了,mysql -uroot -p
输入刚才设置的密码root就可以登录
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。