最近安装mySQL5.7.16,发现安装完后会自动生成一个随机密码,然后用sql工具登录,发现这个密码已经过期了,不能登录。
处理步骤:
1.先关闭MySQL服务:系统偏好-MySQL-关闭;
2.进入终端,输入指令:cd /usr/local/mysql/bin/,进入安装目录;
3.输入指令:sudo su,切换到root用户;
4.输入指令:./mysqld_safe --skip-grant-tables &,禁止mysql验证功能。运行命令后mysql服务会自动重启;
5. 工具(如Navicat)登录MySQL。配置的时候,只输入用户名为root,密码不用输。6. 登录进去以后,数据库选择mysql,修改user表下用户名为root的那条记录,将password_expired设为N。这样随机密码就有效了,可以用密码登录了。
如果希望修改root密码,则在登录mysql后,执行下面两条sql即可(注意此处root就是你要修改的密码):
update mysql.user set authentication_string=password('root') where user='root' and Host = 'localhost';
flush privileges;