6

もっと簡単な方法はありますか?多くのデータベースを起動するには、単純なファイル「start.sh」を作成できます

使用を開始する前に、データベースごとに個別のフォルダーを作成してください。

/opt/db/トランク

/opt/デシベル/マスター

次に「start.sh」へのコピー:

#!/bin/sh
java -cp ./hsqldb/lib/hsqldb.jar  org.hsqldb.server.Server --database.0 file:/opt/db/master/master --dbname.0 master --database.1 file:/opt/db/trunk/trunk --dbname.1 trunk

このファイルを実行可能にします。

chmod +x start.sh

実行を開始します。

$ ./hsqdb.sh

出力:

...
[Server@15c7850]: Database [index=0, id=0, db=file:/opt/db/trunk/trunk, alias=trunk] opened sucessfully in 426 ms.
[Server@15c7850]: Database [index=1, id=1, db=file:/opt/db/master/master, alias=master] opened sucessfully in 128 ms.
...
[Server@15c7850]: From command line, use [Ctrl]+[C] to abort abruptly

したがって、トランクマスターのエイリアスを持つ 2 つのデータベースを取得します。

HSQL データベース マネージャーを構成する方法の例:

タイプ: HSQL データベース エンジン サーバー

ドライバー: org.hsqldb.jdbcDriver

URL: jdbc:hsqldb:hsql://localhost:9001/トランク

ユーザー: SA

パスワード:

エイリアストランクを別のエイリアスに変更できます

JDBC URL 接続:

jdbc:hsqldb:hsql://localhost:9001/トランク

jdbc:hsqldb:hsql://localhost:9001/ master

4

1 に答える 1

1

より一般化されたスクリプトを記述して、データベースを起動できます。

スクリプトが実行しなければならないステップに関するいくつかの考え

  1. パラメータのリストを受け入れる
  2. 宣言しstart_stringます。で初期化java -cp ./hsqldb/lib/hsqldb.jar org.hsqldb.server.Server
  3. 最初のパラメーターは、各DBのフォルダーを含むフォルダーのパスである可能性があります(例/opt/db/
    • 最初以降のすべてのパラメーターはDB名と見なされます
  4. すべてのDB名を繰り返し処理し、DBフォルダーがまだ存在しない場合は、親フォルダー(1番目のパラメーター)に作成します。
    • --database.<counter_variable> file:<parent_folder>/<db_name>/<db_name> --dbname.<counter_variable> <db_name>に追加start_string
  5. 実行するstart_string

次に、DB名のリストをプログラムに渡すことができます。プログラムはURLを使用してそれらに接続します。jdbc:hsqldb:hsql://localhost:9001/<db_name>

于 2012-07-05T07:50:08.853 に答える