Jan11

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

Author: leeon  Click: 2042   Date: 2011.01.11 @ 19:29:26 pm Category: 数据库

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才行。


TAG:   mysql login fail

    评论
    • 提交

    分类

    标签

    归档

    最新评论

    the5fire的博客在12:44:23评论了
    【原创】beautifulsoup解析中文网页乱码解决
    python在12:10:14评论了
    【原创】beautifulsoup解析中文网页乱码解决
    vls在18:02:38评论了
    【原创】使用STL来构造字符串split 和join方法
    john在10:43:23评论了
    【原创】php中ajax异步阻塞解决
    Fang在08:51:00评论了
    java was started but returned exit code=1问题解决小记

    我看过的书

    链接

    其他

    访问本站种子 本站平均热度:1414 c° 本站链接数:55 个 本站标签数:264 个 本站被评论次数:40 次