Mysql5.7修改默认密码

mysql5.7和以前版本有些区别,我是阿里云镜像市场安装的,初始有mysql密码文本,但在修改时并没有用到,网上有很多教程,全都是复制一个人的,但确实好使。

参考: mysql5.7.11修改root默认密码

基本步骤:

  • 1.修改 /etc/my.cnf
  • 2.重启 mysqld 服务
  • 3.使用 root 用户登录到
  • 4.切换到mysql数据库,更新 user 表
  • 5.退出 mysql
  • 6.重启 mysqld 服务

1.修改 /etc/my.cnf :

在 [mysqld] 小节下添加一行:skip-grant-tables=1
这一行配置让 mysqld 启动时不对密码进行验证

2、重启 mysqld 服务:

systemctl restart mysqld

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

mysql -u root

4、切换到mysql数据库,更新 user 表:

show databases;
use mysql;

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

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

5、退出 mysql,编辑 /etc/my.cnf 文件 :

mysql>quit
删除 skip-grant-tables=1 的内容

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

systemctl restart mysqld

另外,MySQL 5.7 在初始安装后(CentOS7 操作系统)会生成随机初始密码,并在 /var/log/mysqld.log 中有记录,可以通过 cat 命令查看,找 password 关键字

找到密码后,在本机以初始密码登录,并且(也只能)通过 alter user 'root'@'localhost' identified by 'root' 命令,修改 root 用户的密码为 root,然后退出,重新以root用户和刚设置的密码进行登录即可。

你可能感兴趣的:(Mysql5.7修改默认密码)