2

问题

(Windows XP) LAN 上其他 IP 的用户突然无法连接到我的本地 MySQL 服务器。

背景

我已经在我的本地 Windows 计算机上设置了 MySQL,以便网络上的其他计算机可以访问 root 帐户。我已将每个 IP 添加为 root 的主机。直到几周前,一切都完美无缺,我可以通过编程方式连接到服务器并使用各种 MySQL 管理工具。然而,现在 MySQL 服务器只是拒绝来自这些 IP 的连接,我不知道为什么。

我所做的网络更改是:更改两(三)台计算机的网卡并摆弄 MySQL 设置。这些都不应该导致这个问题。我尝试添加一个包含所有相关主机的新用户,但我得到了相同类型的错误:

MySQL 错误号 1045 用户 'root'@'shop' 的访问被拒绝(使用密码:是)

奇怪的是,使用计算机名称“shop”而不是 IP。我不知道为什么。

4

4 回答 4

2

不知何故,现在似乎解析了 IP,并使用了主机名。您是否授予对 root@shop 的访问权限?你刷新权限了吗?

于 2009-03-14T11:19:05.063 回答
1

首先想到的是 Windows 防火墙,如果您在主机上交换 NIC,它可能会重新启用。

我的下一个建议是在主机上使用像Wireshark这样的嗅探器,看看数据包到底发生了什么。您可以使用过滤器来减少输出 - 它们非常简单易用。这个工具为我节省了无数小时的调试时间。

-编辑-

另一个可能的原因可能是您的服务器以某种方式决定将 IP 解析为主机名,在这种情况下,IP 地址可能不再起作用 - 需要将主机名添加到允许列表中。不确定它是否适用于 MySQL。

于 2009-03-14T10:33:17.263 回答
0

你能在 MySQL 中关闭 TCP 连接吗?

另外,您的防火墙中是否打开了 MySQL 端口?

于 2009-03-14T10:30:07.583 回答
0

如果您更改了 IP(DHCP?),如果您将 mysqld 绑定到您的局域网 IP,请确保在 my.cnf 中更正它:

[mysqld]
...
bind-address=192.168.x.y
于 2009-03-14T11:29:31.373 回答