0

-edit- 没关系,这是绑定地址。但也许你可以解释为什么我的 php 应用程序能够连接?或者如何制作它,以便我可以通过 IP 地址或 127.0.0.1 连接。我当然没有配置、告诉或更新站点以使用我的 IP 地址而不是 127.0.0.1

我在使用单声道的 debian 上运行的 C# 上使用 MySql。我的应用程序用来工作。然后发生了几件事。我的磁盘空间用完了,我更改了配置,因此 ibdata 不是一个大文件。我的数据库已满并再次耗尽磁盘空间。我还将绑定地址从 127.0.0.1 更改为我的机器 IP 地址。我的应用程序使用 127.0.0.1 但我不确定 php 网站使用什么。我感觉我做了其他更改(例如将 utf8 作为默认设置),但我不记得其中的每一个。

我得到下面的例外。如果我使用mysql -u user -p我可以作为所述用户登录。但是我的应用程序仍然出现异常。我不知道如何调试它。我可以检查什么以及如何解决这个问题?

我的 php 网站似乎可以访问数据库。我的一个 C# 没有,我的控制台应用程序没有。当然,他们都使用不同的用户名。

MySql.Data.MySqlClient.MySqlException:无法连接到任何指定的 MySQL 主机。

4

1 回答 1

1

该错误与用户无关。
“无法连接到任何指定的 MySQL 主机
对我来说,它表示您已经配置了一个(多个)MySQL 主机,您的应用程序正在尝试连接 - 并且失败了。很可能是您绑定地址更改造成了这个问题(您为什么要这样做?)
原因可能有很多:
1)如果您的 SQL 服务器驻留在具有多个网卡/连接的计算机上,您的新配置可能允许连接在其中一个上,但不在其他上。
2) AFAIR http 客户端与直接 TCP 客户端的处理方式略有不同,我认为这与 http 服务器解释 SQL 服务器地址的方式有关(我可能完全错了这一点)。

于 2012-08-08T17:57:25.967 回答