2017-12-27 3 views
0

mysqlデータベースを使用して情報を格納および取得するJavaアプリケーションを作成したいと思います。私はまだ初心者であり、Webホスティングプロバイダーとサーバーアーキテクチャーについて多くの知識を持っていません。このアプリケーションでは、いくつかのクライアントがサーバマシンにあるこのリモートデータベースにアクセスする必要があります。別のネットワーク上のMYSQL DBにJavaをリモートで接続

現在、私はmysqlサーバを実行するコンピュータと同じコンピュータからデータベースに接続できます(私は方法でWorkbenchを使用しています)。私は何をすべきですか?

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

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

    return myConn; 
    } catch (SQLException e) { 

     e.printStackTrace(); 
    } 

    return null; 
} 

URLは次のとおりです。

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

あなたのデシベルの接続コードを追加しますので、我々は、深さの答え –

+0

@ChathuraBuddhikaであなたを提供することができ、私はこれまでのところ –

答えて

0

リモートデータベースに接続しようとしている場合、データベースのURLをlocalhostからリモートサーバーのIPアドレスに変更する必要があります。

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

と仮定すると、

jdbc:mysql://<db-server-ip-address>:<db-server-port>/<db-name> 

に、リモートサーバーのIPアドレスが10.234.05.123とデータベースのポート番号が3300で、データベース名がremoteDBです。その後、ホスティング企業は何ウェブ

jdbc:mysql://10.234.05.123:3300/remoteDB 
+0

こんにちは、助けてくれてありがとう。私は自分のrdbmsとしてMySQLを使用しています。私は私のローカルマシン上のmysqlワークベンチを通じてデータベースを手動で管理しています。私のデータベースのIPアドレスを取得するにはどうすればいいですか?別のネットワークからDBにアクセスできますか? –

+0

@MariaGonzalez mysqlデータベースをインストールしたサーバのIPアドレスが必要です。 – Ravi

0

ウェブホスティング会社は、URLをご提供することができるはずです:あなたは、MySQLに接続するための接続文字列で使用できるポート(またはその他のリモートdb)。

+0

を自分のコードを追加していたあなたがお勧めですか?どのプランを入手する必要がありますか? –

+0

彼らの多くはsoooです。ちょうど最高のWebホスティング企業のためのGoogle検索を行う..あなたは彼らが接続するMySQLサーバーを提供することを確認する必要があります。 – user1063108

0

まず、使用しているMySqlワークベンチから接続URL、ポート、および資格情報を検索する必要があります。ホスティングプロバイダがDBサーバー用のパブリック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接続ドライバを最初にインポートする必要があります。

+0

助けてくれてありがとう!他のネットワークのクライアントから見えるホスト名を取得するにはどうすればよいですか? –

+0

クエリSELECT USER()を使用できます。ユーザー名とホスト名を取得します。それはusername @ hostnameのように戻る – shawon

関連する問題