将Java远程连接到另一个网络上的MYSQL DB

时间:2017-12-27 03:12:09

标签: java mysql jdbc

我想编写一个使用mysql数据库存储和检索信息的java应用程序。我仍然只是一个初学者,我对网络托管服务提供商和服务器架构没有太多的了解。在此应用程序中,多个客户端可能必须访问位于服务器计算机上的此远程数据库。

目前,我可以从运行mysql服务器的同一台计算机连接到数据库(我顺便使用工作台)。关于我该怎么做的任何建议?

public static Connection openDatabase()
{ 
    Connection myConn;
    try {

      myConn = 
            DriverManager.getConnection(Configs.getProperty("DatabaseURL"));

     return myConn;
   } catch (SQLException e) {

      e.printStackTrace();
   }

   return null;
}

网址是:

jdbc:mysql://Atomic-PC:3306/test?autoReconnect=true&rewriteBatchedStatements=true&useSSL=false&user=root&password=password

3 个答案:

答案 0 :(得分:1)

首先,您必须从正在使用的MySql工作台中找到连接URL,端口和凭据。如果托管服务提供商为数据库服务器提供公共IP,您应该可以通过使用Java中的以下代码从任何地方访问它。

import java.sql.Connection;
import java.sql.DriverManager;

public class Main {
  public static void main(String[] argv) throws Exception {
    String driver = "com.mysql.jdbc.Driver";
    String connection = "jdbc:mysql://localhost:3306/YourDBName";
    String user = "root";
    String password = "root";
    Class.forName(driver);
    Connection con = DriverManager.getConnection(connection, user, password);
    if (!con.isClosed()) {
      con.close();
    }
  }
}

因此,您必须首先将mysql连接驱动程序导入您的应用程序。

答案 1 :(得分:0)

您的网络托管公司应该能够为您提供url:port,您可以在连接字符串中使用该端口连接到MySQL(或任何其他远程数据库)

答案 2 :(得分:0)

如果您尝试连接到远程数据库,则需要将数据库URL从ios-deploy : 1.9.2 ios-sim : 5.0.12 Node : v8.9.3 npm : 5.5.1 OS : macOS High Sierra Xcode : Xcode 9.2 Build version 9C40b 更改为远程服务器IP地址。

localhost

jdbc:mysql://Atomic-PC:3306/test

假设远程服务器IP地址为jdbc:mysql://<db-server-ip-address>:<db-server-port>/<db-name> ,数据库端口号为10.234.05.123,数据库名称为3300。然后,

remoteDB