2010-03-30 96 views
4

我意外地更改了mysql用户表内根用户的“主机”值。#1130 - 主机'localhost'不允许连接到这个MySQL服务器

我需要将它更改回localhost,因为我将其更改为arancillary2125(我的其他机器DNS名称),但由于“localhost”没有权限,我无法访问mysql(来自PHPMYADMIN或命令提示符)。

我运行Windows XP // //阿帕奇

我曾尝试以下解决方案,但他们没有工作:

https://serverfault.com/questions/92870/1130-host-localhost-is-not-allowed-to-connect-to-this-mysql-server

+0

看到我的文章编辑。 – bdl 2010-03-30 20:51:11

+0

请参阅此链接:http://www.webyog.com/faq/content/23/36/en/i-get-error-1130-host-is-not-allowed-to-connect-or-access-denied -or-could-not-connect-.html – 2012-08-10 12:18:22

回答

14

哎呦。

这是在您的本地机器上,我想?在开始 - >运行中,输入'services.msc'并找到MySQL服务。停止服务。

编辑:

找到你的my.ini文件(通常在C:\ Windows或C:\ MySQL等)。如果你没有,create one。这只是一个普通的ASCII文件。

改变文件,将其添加到[mysqld]部分:skip-grant-tables

在命令行上,发出命令net start MySQL并稍等片刻,MySQL服务应该启动。

仍然在命令行上,发出命令mysql -u root并点击“ENTER”。您应该以“root”用户身份登录MySQL。 小心更改您的赠款,然后注销。停止MySQL服务/服务器。重新编辑您的my.ini文件,并删除/注释掉skip-grant-tables行,然后再次启动服务器。尝试再次以root身份登录。

刚刚在我的Win XP Pro盒子上测试过。

这基本上具有绕过所有授权表的效果,因此不会打扰查找您是否应该从该机器访问它。

MySQL参考手册:--skip-grant-tables option

+0

当我尝试这个时,我打开提示符,输入我的密码,并在我这样做后立即关闭。 – Raph 2010-03-30 19:16:44

+0

+1正确的解决方案 – kinkajou 2011-08-13 05:40:32

+0

当我尝试使用mysql -u root连接到cmd时,我得到了这个:错误1130(HY000):主机'localhost'不允许连接到这个MySQL服务器。我在互联网上尝试了很多文章,但仍然遇到了这个问题。我重新安装了每一个mysql的东西,但这个消息我到处都是...... :((( – 2014-04-18 15:55:23

1

重新创建arancillary2125(如果连在一个旧桌子顶部),然后访问你的数据库的方式。

5

所以我有这个问题,以及#1130突然发生 - 主机'本地主机'不允许连接到这个MySQL服务器。

搜索和搜索后,我可以告诉你,bdl解决方案是前进的方向,一旦你可以重新登录服务器,你可以改变你的my.ini配置下的权限并删除行skip-grant-tables文件。

我只是upvoted bdl的帖子,但即时通讯太新,在网站上做到这一点呢。

相关问题