有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何通过网络从计算机2连接到位于计算机1上的mysql服务器?

我正在尝试从另一台计算机连接到mysql服务器,该计算机位于与运行mysql服务器的网络不同的网络上;所有这些都来自使用DAO类的java代码

首先,如果我在mysql服务器的同一个网络上,我可以使用本地ip 192.168.X.X连接到数据库;如果我的电脑连接到另一个网络,我就不能这样做。 我已经做了以下工作:

  • 授予用户(与根用户不同)访问和修改my DB中的表的权限
  • 修改了注释行bind-address的文件mysqld.cnf,以接收来自IPv4和IPv6地址的连接
  • 在我的mysql服务器机器和我的其他机器的防火墙中创建了规则,允许在特定端口上进行连接(进出)
  • 尝试使用网站canyouseeme,该网站允许您发现您的“外部”ip地址,还允许您使用ip地址ping机器,ping mysql服务器机器上的端口,但我无法ping它们;结果是每个端口的“连接超时”

我应该如何连接到数据库


共 (2) 个答案

  1. # 1 楼答案

    如果计算机2通过不同的调制解调器或internet提供商连接到计算机1的internet,则需要打开调制解调器cofig中的3306端口并重定向到计算机2的本地ip,配置取决于您的调制解调器型号

    最后,您需要在项目配置中使用网络2的外部ip作为主机,并在mysql中使用主机%或网络1(客户端)的外部ip的用户

    顺便说一句,我相信Comptuer2正在运行mysql

  2. # 2 楼答案

    您是否托管sql数据库?如果您以某种方式托管服务器,则只能连接到其他网络上的服务器

    您可以使用类似WAMP的东西。你需要采取一些安全措施,它需要一个静态IP

    不过,最简单的办法是从一家值得信赖的公司购买一个托管域和一些内存空间,然后把你所有的东西都扔到那里。只是谷歌托管服务