コマンドラインによる操作
最終更新日: 2022年10月31日
ビルドしたアプリケーション wagbyapp の bin フォルダに、次のコマンドが含まれています。
Windows OS 利用時、このバッチファイルを(ファイルエクスプローラから)ダブルクリックして実行することはできません。コマンドライン引数として「対象フォルダ」を指定する必要があるためです。
各コマンドは wagbyapp\bin フォルダに用意されています。
コマンドを実行する場合、カレントフォルダを wagbyapp\bin としてください。
Windows OS の場合、コマンドプロンプトから cd コマンドを使ってカレントフォルダを移動します。
カレントフォルダが wagbyapp\bin でない場合、実行時に "Error: Unable to access jarfile InitLoader.jar" というエラーになります。
init_db コマンドは、テーブルの初期化を行います。
具体的には、wagbyapp\webapps\wagby\WEB-INF\export\init フォルダに含まれているデータをインポートします。
このコマンドは、すでにテーブルが存在する場合は、処理をスキップします。
そのため、通常は最初に drop_db コマンドを実行し、そのあと init_db コマンドを実行します。
Windows OS の場合:
Linux OS の場合:
コマンドライン引数にモデルIDを指定することができます。
複数のモデルIDを指定する場合は、空白で区切ります。
drop_db コマンドは、テーブルの削除を行います。
具体的には、データベースに対して drop table 命令を実行します。
Windows OS の場合:
Linux OS の場合:
コマンドライン引数にモデルIDを指定することができます。複数のモデルIDを指定する場合は、空白で区切ります。
export_db コマンドは、テーブルの内容を XML 形式ファイルで出力します。
出力先フォルダは省略できます。省略時のフォルダ名は「..\..\export\data_"出力した時間(年月日時分秒)"」となります。
import_db コマンドは、テーブルの作成ならびに、エクスポートされた XML 形式ファイルを読み込み、データベースに格納します。
入力例
第二引数にモデルIDを指定することができます。
入力例
import_db は指定したモデルをインポートしたあと、次のシステムモデルのテーブルを常に再作成(dropとimport)します。
対象データが大量の場合、標準のメモリサイズでは足りずに「Out Of Memory」(メモリ不足)というエラーになることがあります。
この場合は、上記スクリプトファイルをテキストエディタで編集します。次に示す斜字の部分を修正してください。
-Xmx の初期値は 512m (512メガバイト) となっています。処理が成功する値になるよう、この値を増やします。
Wagbyのインポート・エクスポート処理は、「1つのXMLファイル」を「(データベースの)1レコード」として扱い、データベースとのやりとりを行います。
具体的な XML ファイルは次のようになっています。
XML ファイルを編集する場合、Windows に付属の「メモ帳」はご利用になれませんので、ご注意ください。
内蔵データベース利用時は、wagbyapp アプリケーションを停止してから(ここに紹介した)コマンドを実行してください。
インポートとエクスポートの対象となるフォルダは、"モデルID/XMLファイル" と、モデルIDの名前のフォルダの中に、個々のXMLファイルが格納されるようになっています。このルールを遵守してください。
R9.0.xおよびR9.1.xでは Java 17 利用時はコマンドライン操作を行うことができません。この対応は R9.2 で修正されます。
コマンドライン一覧
これらは実行可能スクリプトとして提供されます。
コマンド(スクリプト)名
用途
引数
利用例
init_db
テーブルの初期化
モデル名(英語)
init_db.bat
init_db.bat staff
drop_db
テーブル定義の削除
モデル名(英語)
drop_db.bat
drop_db.bat staff
export_db
データのエクスポート
エクスポート対象フォルダ
export_db.bat ..\..\export\YOURFORLDER
export_db_zip
データのエクスポート (zip圧縮込み)
エクスポート対象フォルダ
export_db.bat ..\..\export\YOURFORLDER
import_db
テーブルの作成とデータのインポート (*)
インポート対象フォルダ
import_db.bat ..\..\export\YOURFORLDER
注意
コマンドを実行するときのカレントフォルダ
cd $(wagbyappフォルダ)\bin
重要
データベースの初期化 (init_db)
実行方法
drop_db.bat
init_db.bat
drop_db.sh
init_db.sh
対象モデルを指定する
init_db staff
複数のモデルを指定する
init_db juser customer jgroup
データベースの削除 (drop_db)
実行方法
drop_db.bat
drop_db.sh
対象モデルを指定する
drop_db staff
コマンドラインからのエクスポート
export_db.bat [出力先フォルダ]
コマンドラインからのインポート
import_db.bat [読み込むデータが格納されているフォルダ]
import_db.bat ..\..\export\data_sample
モデルを指定する 8.4.0
import_db.bat [読み込むデータが格納されているフォルダ] [モデルID]
import_db.bat ..\..\export\data_20200131090000 juser
詳細
実行時のメモリを指定する(大量データ処理の場合)
@ECHO OFF
...
"%JAVA_HOME%\bin\java" -Xmx512m -XX:MaxPermSize=192m -Dcatalina.home=".." -Djava.io.tmpdir="${catalina.home}\temp" -jar InitLoader.jar auto %TARGET% -check_exists_table true -c ..\webapps\wagby\WEB-INF\export\conf\initdb.xml -d ..\webapps\wagby\WEB-INF\export
XMLファイル
<?xml version="1.0" encoding="UTF-8"?>
<staff>
<staffid>1000</staffid>
<name>山田 花子</name>
<birth>1972-05-15</birth>
</staff>
XMLファイル編集時の注意
仕様・制約
フォルダ名の規則
Java 17での動作