这是我的连接字符串
mySqlCon.ConnectionString = "server=testserver.noip.me; port=3306; database=testserver1; uid=admin; pwd=admin"
我创建了一个带有 TryCatch 功能的vb.net应用程序来检查MySql连接。
我的服务器 testserver.noip.me
是我的公共广告 的主机名(主机名是一个示例,如果您在线检查端口,它不会工作)即可。如果我将服务器更改为 localhost / 127.0.0.1 或我的私有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或任何安全连接指南,因为这只是一个测试服务器。
答案 0 :(得分:0)
在您的MYSQL(源计算机)中,您必须为访问权限启用目标域名。 在主机表中添加目标IP。
答案 1 :(得分:-1)
因为你没有转发端口。
转到路由器设置,查找端口转发使用HTTP添加服务,输入本地IP地址,然后指定3306端口作为结束端口。
这为我工作。也许它也适合你。