Mysql无法登录的问题
本文最后更新于:2022年6月17日 下午
问题描述:
mysql版本:5.7.35,linux系统:centos7
远程登录和linux服务器本地登录都出现Access denied for user ‘root‘@’localhost’ (using password: YES/NO) 的报错。一个常见的原因是密码错误,但作者遇见此问题时确信密码是正确的,因为之前都是使用的同一账户密码远程登录没有问题。
登录服务器终端,发现本地登录也是同样的报错,于是先在配置文件 /etc/my.cnf中添加一行
1 | |
这样可以忽略权限表,从而可以临时不要密码直接登录 mysql 控制台。
然后进入 mysql 控制台,查看一下 user 表中的数据,发现居然没有 root 账户,所以需要先添加一个 root 账户,然后授权。以下操作均在 mysql 控制台中进行:
1 | |
此处参考文章[1],原作者此处为:
1 | |
在我的环境中会报错 Operation CREATE USER failed for ‘root‘@’localhost’。
然后刷新:
1 | |
然后授权:
1 | |
最后恢复mysql配置文件:/etc/my.cnf,删除掉之前添加的 skip-grant-tables。再重启mysql服务即可。
服务器端推荐的mysql启动和停止的方式:
1 | |
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!