无法使用C#中的静态IP地址+端口连接数据库

时间:2013-12-03 02:40:10

标签: c# mysql phpmyadmin port

我有一个连接到MySQL数据库的现有应用程序(使用WampServer)。我可以使用localhost作为我服务器的名称。

我尝试使用静态IP地址而不是localhost。可以从http://192.168.1.1:1234/phpmyadmin访问数据库。

我已经这样设置了我的app.config:

<appSettings>
    <add key="MyConnection" value="Data Source=192.168.1.1;Port=1234;Database=mydb;UID=root;" />
  </appSettings>

但在我尝试运行该应用程序时收到错误:

  

无法从传输连接读取数据:连接   尝试失败,因为关联方没有正确回应   一段时间后,或建立连接失败,因为   连接主机未能响应。

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

默认情况下,phpmyadmin侦听localhost(127.0.0.1)。您必须修改配置文件以侦听0.0.0.0

或者只是在/etc/my.cnf中注释这一行:

#bind-address            = 127.0.0.1

然后重启你的mysql服务器

答案 1 :(得分:1)

  

可以从http://192.168.1.1:1234/phpmyadmin

访问数据库

这仅表示您的 webserver PHP 192.168.1.1端口1234上运行。这并没有告诉我们 MySQL 正在运行的地方。

如果PHPMyAdmin工作正常,并且您可以看到您的数据库,那么您可以在PHPMyAdmin配置文件中查找MySQL连接信息。

通常,如果配置为TCP,MySQL将侦听端口3306.我会尝试将您的连接字符串更改为

Data Source=192.168.1.1;Port=3306;...

如果这不起作用,可能是user2196728 said,MySQL只监听本地环回适配器(127.0.0.1),这更安全。在这种情况下,您应该在连接字符串中使用localhost,或者将配置文件更改为侦听0.0.0.0,这意味着所有具有IP地址的适配器。