C# 远程连接到MySQL

C# 远程连接到MySQL,c#,mysql,C#,Mysql,我在远程连接以及使用IP而不是“本地主机”连接MySQL服务器时遇到问题 我做了什么来解决这个问题 打开TCP和UDP上的端口3306 在Windows防火墙中添加了端口异常 允许通过Windows防火墙进行MySQL公共连接 还创建了一个用户,我为其授予了所有权限,并随后刷新了该用户 我想使用我的C#应用程序连接到此数据库,并通过datagridview检索数据(目前通过localhost DB工作正常) 我在这里遗漏了什么来让我的连接工作,这样我就不会以这个错误结束 无法连接到MySQL

我在远程连接以及使用IP而不是“本地主机”连接MySQL服务器时遇到问题

我做了什么来解决这个问题

  • 打开TCP和UDP上的端口3306
  • 在Windows防火墙中添加了端口异常
  • 允许通过Windows防火墙进行MySQL公共连接
  • 还创建了一个用户,我为其授予了所有权限,并随后刷新了该用户
我想使用我的C#应用程序连接到此数据库,并通过datagridview检索数据(目前通过localhost DB工作正常)

我在这里遗漏了什么来让我的连接工作,这样我就不会以这个错误结束

无法连接到MySQL。。。(10061)

我只测试了同一台PC上的连接,如果这有关系的话,我认为这不应该,因为它是相同的IP

工作本地连接字符串:

string connString = "datasource=localhost;port=3306;username=myUser;password=myPassword";

如果你连接到你的IP,你应该端口转发你的路由器


上有很多指南,请检查您的mysql端口是否可以从internet访问,以便使用以下工具进行ex-test:

您的mysql是否接受远程连接

请看这里:


“端口3306已打开。”因此端口正常。编辑:我看到您执行了portforward。你能告诉我们你连接的代码吗?也许你的DSN无效。编辑了我的帖子。我通过wForms应用程序上的数据源添加了主连接。如果您需要更多的代码,我可以添加其余的代码,但这只是加载数据的命令。这个问题并非离题,开发人员需要知道如何始终连接到MySQL。“以及使用我的IP连接”-MySQL是否仅限于在本地主机上侦听?试试
netstat-an | grep3306
-你想让它说
0.0.0:3306
而不是
127.0.0.1:3306
。然后,您需要确保您的数据库用户帐户的主机是
%
,而不仅仅是
localhost
,否则它将无法登录,或者无法创建用于远程访问的单独用户。请确认帐户主机是“%”。在哪里可以打开命令控制台?我只安装了关于数据库的MySQL Workbench。很抱歉,我没有收到您的回复。netstat是用于Windows命令提示符的命令,而不是MySQL工作台。如果您试图将输出传递到grep时出错,请改用
| more
,只需查找TCP LISTEN 3306行。我找到了地址,它是0.0.0.0:3306。我正在考虑尽快开始一个关于使用谷歌API从谷歌电子表格中获取数据的新线程。除了本地,从未让MySql工作过。