MySql5.7默认生成的密码无法正常登陆

 

 1、修改 /etc/my.cnf,在 [mysqld] 小节下添加一行:skip-grant-tables=1

 

这一行配置让 mysqld 启动时不对密码进行验证

 

2、重启 mysqld 服务:systemctl restart mysqld

 

3、使用 root 用户登录到 mysql:mysql -u root

 

4、切换到mysql数据库:

use mysql;

更新 user 表:

update user set authentication_string = password(‘root’), password_expired = ‘N’, password_last_changed = now() where user = ‘root’;

这样密码就改成了root”

在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string

 

5、退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1 的内容

 

6、重启 mysqld 服务,再用新密码登录即可

 

修改远程连接权限

USE mysql;

SELECT * FROM USER WHERE USER='root';

UPDATE USER SET HOST = '%' WHERE USER ='root';

FLUSH PRIVILEGES

第一句是以权限用户root登录

 第二句:选择mysql库

    第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)

    第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址

    第五句:刷新MySQL的系统权限相关表;

posted on 2019-06-26 09:45  陌上冬雪  阅读(1150)  评论(0编辑  收藏  举报

导航