MySQL8.0在CentOS7上通过命令行输入密码无法登录解决方法

MySQL版本8.0.24  Linux版本CentOS7.0.4

摆置了老长时间,终于弄好了。由于想到本人记性不好,害怕下一次遇到这种问题无法及时解决,所以给这回的解决办法记录下来,以便避坑。如果有网友也遇到这种情况,你也可以按照这个方法试一试,说不定能处理好。

步骤:咱先给  skip-grant-tables  加到my.cnf文件的  [mysqld]  标签下面,加完后重启MySQL:systemctl restart mysql

加入的这行是用来跳过登录验证的,加完保存,就可以到命令行中进行登录了,咱输入mysql -uroot -p进行登录

登录完成后,重置密码(重点!一定要改个密码!)SET PASSWORD FOR root@localhost = '123456';

修改密码如果报错,输入flush privileges;

再次输入SET PASSWORD FOR root@localhost = '123456';(如果没有报错则不用进行这一步)

设置远程访问

create user 'root'@'%'identified by 'admin';
grant all privileges on *.* to 'root'@'%' with grant option;

完成上面这一步后同时也将此数据库设置为了主库(方便主从复制)

输入exit退出

到my.cnf文件中注释掉或者删除掉[mysqld]标签下面的skip-grant-tables

重启MySQL数据库

:如果不知道my.cnf文件在哪里,用find / -name my.cnf 命令可以找到,在/etc目录下的那个my.cnf就是咱要找的

完成了!可以在命令行输入密码登录了,同时也可以远程访问~

 

感谢大佬的文章:https://blog.csdn.net/m0_70556273/article/details/126490767

 
posted @ 2022-11-07 19:07  每日一小步  阅读(682)  评论(0编辑  收藏  举报