[英]How to access a remote mysql database using java
我已经开发了一个JAVA SWING应用程序 。 我想在可以访问Internet的 多台计算机上安装此应用程序。 那么我应该在哪里放置MYSQL数据库? 所有这些计算机都应该能够通过Internet访问相同的数据库。
出于安全性(身份验证授权,加密)和性能的原因,允许直接通过Internet访问数据库并不是很常见。 在大多数情况下,您将创建一个基于Web的服务器应用程序,该应用程序可以执行数据库操作,执行业务,域和安全规则。 客户端应用程序通过Internet进行调用(使用REST调用,AJAX调用或某些专有的方法),然后从服务器获取结果。
在您的情况下,由于客户端软件是Java,因此您可能需要研究Java Servlet并运行诸如Tomcat之类的轻量级服务器。
为每个Applicaton主机的每个外部IP地址在mysql上创建一个用户。
GRANT ALL PRIVILEGES TO database.* to `user1`@`APPLICATION_HOST_IP` identified by 'PASSWORD';
现在, user1
将可以从APPLICATION_HOST_IP
IP访问。
好吧,可能性是无限的。您可以将其放置在其他计算机可以访问的每台计算机上。 只要您可以通过网络访问数据库,则实际上并不重要。 但是,如果将带有客户端Swing的计算机全部连接到LAN中,则应将DB存储在性能最佳的计算机上。 作为提示,请使用IP,并动态地从文本或输入端口进行移植,因此您不必在每次更改IP时都重新编译。 !
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.