一般情况下linux下mysql安装完成后会自动生成一个密码,我们可以使用cat命令在/var/log/msqld.log下查看,但是,有一次却发现这个密码神奇的不可用,所以我们得想个办法来跳过验证了:
0.环境说明:
①mysql 5.7.25
②centos 7.4
③拥有root权限,忘记mysql root密码或者无法登陆的情况
1.跳过mysql密码验证:
whereis my
找到my目录后编辑my.cnf 在[mysqld]后面任意一行添加“skip-grant-tables”
vi /etc/my.cnf skip-grant-tables
2.重启mysql
service mysqld restart mysql
现在mysql可以直接登录了
3.修改mysql密码:
UPDATE mysql.user SET authentication_string = PASSWORD('Root123A'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; flush privileges; quit;
这样就将mysql root用户的默认密码修改成了Root123A
如果是5.7以前的用户可以尝试使用:
update msyql.user set password=password("Root123A") where user="root"; flush privileges; quit;
4.然后编辑my.cnf 在[mysqld]去掉刚刚添加的“skip-grant-tables”,重启mysql
sevice mysqld restart
近期评论