首页 > 数据库 > MySQL > 正文

MySQL密码正确却无法本地登录的解决方法

2024-07-24 12:46:29
字体:
来源:转载
供稿:网友

MySQL root密码正确,却怎么也无法从本地登录MySQL,提示

复制代码 代码如下:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

这里后来经高人指点才发现mysql库中的user表缺少一个root指向host:localhost的数据项,只有一个root指向host:主机名的数据项,故怎么也无法利用root账户登录MySQL。

总结一点就是root账户缺失了访问localhost主机的账户信息,导致无法本地登录。

模拟测试如下:

那有什么办法恢复root登录呢?

这里记录一下今天遇到的纠结事情:

首先kill掉MySQL进程然后在启动mysql的参数中加入

复制代码 代码如下:
--skip-grant-tables

会发现这时无密码就可以登录mysql了。

当然我们还必须修复root账户丢失的数据项。

这里有两种解决方案:

第一种是因为root账户初始的时候有3条记录,包含root对应localhost,hostname,127.0.0.1三条账户数据,我们可以update host为其他两项中一项为localhost即可。
第二种是直接insert一条记录,host为localhost即可

总结一下:即使root的host包含了主机名,127.0.0.1那么依然是无法正常登录的,这里必须要有localhost的host才行。

您可能感兴趣的文章:

linux下讲解MySQL安装与登录方法解决 phpmyadmin #2002 无法登录 MySQL 服务器phpmyadmin报错:#2003 无法登录 MySQL服务器的解决方法关于MYSQL 远程登录的授权方法 命令mysql登录报错提示:ERROR 1045 (28000)的解决方法php+MySQL实现登录时验证登录名和密码是否正确mysql登录遇到ERROR 1045问题解决方法MySql登录时闪退的快速解决办法php+mysql实现简单登录注册修改密码网页mysql登录警告问题的解决方法
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表