【发布时间】:2015-10-22 17:49:29
【问题描述】:
这是我的连接字符串
mySqlCon.ConnectionString = "server=testserver.noip.me; port=3306; database=testserver1; uid=admin; pwd=admin"
我创建了一个带有 TryCatch 功能的 vb.net 应用程序来检查 MySql 连接。
我的服务器testserver.noip.me是我的公共ip 的主机名(主机名是一个例子,如果你在线检查端口,它不会起作用) 。如果我将服务器更改为 localhost/127.0.0.1 或我的 private ip 地址(类似于 192.168.0.xx),结果是连接就好了。即使在另一台 PC 上但在同一个 wifi 网络内也能连接到数据库。
每当我将其更改为我的公共 IP 地址或我的主机名时,应用程序都会返回一条错误消息:
“无法连接到任何指定的 MySQL 主机。”
这里是代码
Try
mySqlCon.Open()
If mySqlCon.State = ConnectionState.Open Then
Label5.Text = "Online"
Label5.ForeColor = Color.GreenYellow
LoginBtn.Enabled = True
Else
Label5.Text = "Offline"
Label5.ForeColor = Color.LightPink
LoginBtn.BackColor = Color.Red
End If
mySqlCon.Close()
Catch ex As MySqlException
If mySqlCon.State = ConnectionState.Open Then
mySqlCon.Close()
End If
Finally
mySqlCon.Dispose()
End Try
额外信息:我已经安装了 connectornet,并且正在为此使用 MySQL 工作台。
在本地网络上一切正常,但不在线。知道我应该怎么做才能使应用程序从另一个在线网络成功连接到数据库吗?请不要使用 SSH 或任何安全连接指南,因为这只是一个测试服务器。
【问题讨论】:
-
您能否通过远程 PC 上的 MySQL 接口(如果已安装)访问数据库,您想在哪里连接?您也可以尝试服务器名称/实例,例如testserver.noip.me/myInstance
-
@SJSSoft 不,我没有在远程 PC 上安装接口。我只是发送发布文件,从 setup.exe 安装 vb 应用程序(也会自动下载连接器)跨度>
-
那么你必须使用实例测试连接字符串。我有同样的问题。我有 ip 172.XX.XX.XX,当我尝试在本地访问它时,它正在工作,但在远程它失败了。然后我使用了 172.XX.XX.XX/rserver,它成功了。也尝试使用 IP 而不是服务器名称。
-
@SJSSoft 我尝试将我的公共 IP 用于服务器,但也失败了。顺便说一句,我如何使用 Instance 对其进行测试?
-
从dev.mysql.com/downloads/workbench 下载 Workbench (MySQL GUI) 并安装它。然后尝试使用 Workbench 访问远程数据库。使用 WorkBench 连接远程数据库的分步指南dev.mysql.com/doc/workbench/en/…
标签: mysql vb.net networking visual-studio-2013 mysql-workbench