2011-04-21 204 views
1

我只是在我的PC上设置了一个MySQL服务器,用于使用JDBC测试Java。 目前“localhost”完美地作为我的应用程序的主机名,当在同一个系统上运行它们时。什么是我的本地MySQL服务器上的主机名?

但是,对于运行在不同计算机上的应用程序,我的MySQL服务器的主机名是什么?像“my_ip:port”可以工作吗?我正在考虑编写一个小程序,我可以在Web服务器上上传并在此尝试连接到我的数据库。这有可能实现吗?

回答

1

类似“my_ip:port”会起作用吗?

如果MySQL实例已绑定到您的公共接口,并且您的防火墙允许,那么是的。如果您通过一台执行NAT的路由器连接到网络(例如,一个组合DSL调制解调器和无线路由器允许您连接多台计算机),则必须在路由器中设置转发规则以告诉它哪个本地机器转发请求。

您不必使用IP地址。您的机器也可能具有某种主机名(您分配的一个主机名,或者如果通过ISP连接,则更可能是他们分配的主机名)。这也会起作用。

我正在考虑编写一个小程序,我可以上传到Web服务器上并尝试连接到我的数据库。这有可能实现吗?

signed Java applet,是的;否则,不。这是因为Java applet运行的安全沙箱不允许他们访问除了从其加载的服务器(Web服务器)以外的服务器。

更好的方法是让您的客户端代码(Java applet或仅DHTML + Ajax内容)与Web服务器上的服务器端代码进行对话,然后再与您的数据库进行对话。这样,数据库永远不会直接暴露于外部世界,而且您不必像签名的小应用程序那样进行操作。

1

您始终可以使用运行mysql的服务器的IP地址作为主机名或其完全限定的域名。

+0

使用mysql - 并非总是如此。如果在MySQL配置中关闭网络支持,则只需使用本地套接字,而不是主机名或FQN – zerkms 2011-04-22 04:55:37

0

这应该可行,但你也应该考虑通过防火墙进行端口转发。

转到这里来获得你的IP:http://www.whatsmyip.org/

的端口就是MySQL的是安装程序。

相关问题