2017-02-24 10 views
-1

私はJavaプロジェクトを持っています。それはMySQLデータベーストランザクションを使用します。私は別のコンピュータでこのJavaプロジェクトを実行します。私はセットアップを行います。この設定では、.sqlデータファイルをインポートする必要があります。しかしMySQLはそうでなければなりません。私は別のコンピュータにMySQLをインストールしません。私はセットアップにMySQLサーバファイルを置くでしょう。MySQLをインストールせずに実行する

どうすればいいですか?

+0

詳細については、質問を編集してください。あなたのユーザー(セットアッププログラムを実行しているユーザー)は自分のMySQLサーバーを使ってJavaプログラムを実行しますか?複数のユーザが同じMySQLサーバを共有しますか? MySQLサーバは常にあなたのJavaプログラムとは異なるマシンにあるでしょうか? –

答えて

1

代わり接続このようlocalhostを使用します

Connection connection = DriverManager.getConnection(
        "jdbc:somedb://localhost/databasename", "username", "password"); 

あなたは一例10.6.99.122のための他のコンピュータやサーバの@IPを使用することができますので、これはあなたの問題を解決することができず、インストールまたはインポートする必要があります他のコンピュータでのSQLファイル:

Connection connection = DriverManager.getConnection(
        "jdbc:somedb://10.6.99.122/databasename", "username", "password"); 

EDIT

あなたがここにJava, MySQL: Is there a way to embed a MySQL server with a Java program?、ここEmbedding mysql in java desktop applicationともhere

+0

別の方法がありますか?私はプログラムコードを変更することを望まない。 –

+0

mysqlまたは任意のDBMS魔法使いを使用している場合は、データベースhttps://en.wikipedia.org/wiki/Embedded_databaseに埋め込まれていないので、私は恐れることはありません@SOFJMP –

+0

はい私はMySQLを使用します。 @ YCF_L –

0

あなたは、外部接続を使用してWebホスティングにデータベースをホストするいずれかの組み込みデータベースについての詳細を学ぶことができる、またはあなたがデータを共有する必要がないとのデータがある場合ローカルに格納され、ユーザ自身が生成した場合、代わりにsqliteファイルを使用することができます。 あなたの質問には、データの種類と、最良のソリューションを提供するためにどのように使用されるかについての詳細が説明されています。

+0

私はsqliteを使用しません。 –

0

あなたの顧客が自分のコンピュータでJavaプログラムを実行してMySQLサーバに接続することを希望する場合、にJavaプロパティファイルに入力する必要があります。 あなたはこれについて選択する必要はありません。顧客が独自の接続文字列値を設定できるようにする必要があります。

新しいJDBC接続を作成するために接続文字列が使用されます。

jdbc:mysql://mysql1.datacenter.example.com:3306/sofjmp?user=username&password=xxxxxsx 

ユーザーのデータベースのユーザー名とパスワードの秘密は、プロパティー・ファイルに格納する接続文字列に含めることができます。これにより、顧客は独自のデータベース認証情報を指定することができます。

セットアッププログラムには、ユーザーがその接続文字列プロパティを設定する手順が記載されている必要があります。また、セットアッププログラムにテーブル定義とともに.sqlファイルを含めることもできます。 .sqlファイルを最初にセットアップするときに顧客に指示することができます。

関連する問題