intra-mart Accel Platform テナント環境セットアップ 仕様書 第5版 2016-12-01

システムデータベースセットアップ

システムデータベースセットアップ とは

intra-mart Accel Platform の起動時からシステムが参照する必要のあるシステムデータベースのテーブルを、システムデータベースに作成する処理です。

たとえば、「im_tenant」モジュールでは、システムデータベースセットアップで次のようなテーブルを作成しています。
  • im_administrator(システム管理者テーブル)
  • im_tenant_info(テナント情報テーブル)
これらは、 intra-mart Accel Platform が起動してからテナント環境セットアップが実行開始されるまでにアクセスする必要があり、かつシステムデータベースで管理されるべき情報を保持するテーブルです。
このようなテーブルを必要とするモジュールは、システムデータベースセットアップを実行するための資材を用意する必要があります。

注意

システムデータベースセットアップは上記の性質上、NTTデータ イントラマート社が提供する製品でのみ実行するセットアップです。

独自開発などの場合は、システムデータベースセットアップの定義の追加は行わないでください。

注意

intra-mart Accel Platform における「システムデータベース」は、
intra-mart WebPlatform / intra-mart AppFramework における「システムデータベース」とは扱いが異なることに注意してください。

それぞれのデータベースの対応は下表のようになります。

intra-mart Accel Platform intra-mart WebPlatform / intra-mart AppFramework
システムデータベース (なし)
テナントデータベース ログイングループデータベース
シェアードデータベース システムデータベース

システムデータベースセットアップ 仕様

システムデータベースセットアップ で実行可能な処理

セットアップで実行できる処理は、システムデータベースに対する DDL の発行のみです。

システムデータベースセットアップ 実行準備

システムデータベースセットアップを実行するモジュールは、セットアップ用SQLファイルを用意する必要があります。

例:モジュールID=”jp.co.intra_mart.im_tenant”の場合、次のようなSQLファイルを用意してください。

WEB-INF/conf/products/import/system/im_tenant/import-im_tenant-1.sql

セットアップ用SQLファイルの配置先、および命名の規則について説明します。

  • セットアップ用SQLファイルの配置先ディレクトリ規則は次のとおりです。

    WEB-INF/conf/products/import/system/ %ショートモジュールID%

  • セットアップ用SQLファイルの命名規則は次のとおりです。

    import-%ショートモジュールID%-%スキーマバージョン%.sql

コラム

セットアップ用SQLファイルの初回作成の場合、スキーマバージョンは必ず”1”としてください。

以降、バージョンアップなどのタイミングで追加セットアップが必要となったときは、順次スキーマバージョンを1ずつインクリメントしてセットアップ用SQLファイルを作成してください。

コラム

セットアップ用SQLファイルは、システムデータベースの種類に応じた定義をすることができます。
セットアップ用SQLファイルのファイル名の末尾にデータベースサフィックスを付加することで対応します。

実際のモジュールを例にとって説明します。

「サービス機構モジュール(jp.co.intra_mart.im_service)」は、スキーマバージョン=1で次のセットアップ用SQLファイルを定義しています。

  • import-im_service-1.sql
  • import-im_service-1_oracle.sql
  • import-im_service-1_sqlserver.sql

この場合のシステムデータベースセットアップは次のように動作します。

システムデータベースの種類 システムデータベースセットアップ時に読み込まれるセットアップ用SQLファイル
Oracle Database import-im_service-1_oracle.sql
PostgreSQL import-im_service-1.sql
Microsoft SQL Server import-im_service-1_sqlserver.sql

マルチデータベース対応の詳細については セットアップにおけるマルチデータベース対応 を参照してください。

セットアップ用SQLファイルの記法については セットアップ用SQLファイル / インポートDDL / インポートDML 記法 を参照してください。

インポートファイル の作成と配置

セットアップ設定ファイルに記述したインポートファイルを作成します。

作成したら、セットアップ設定ファイルで指定したパスに配置します。
配置先は システムストレージ です。パブリックストレージではないので注意してください。

システムデータベースセットアップ 実行方法

ここまでで説明したセットアップ用SQLファイルが用意されている場合、定義したDDLは intra-mart Accel Platform の起動時に発行されます。

システムデータベースセットアップ 実行順序

Setup order of System database setup

コラム

SchemaUpdate 機能を利用しているので、セットアップ済みのシステムデータベースセットアップはスキップされます。
同じ処理が2度以上実行されることはありません。

システムデータベースセットアップ におけるトランザクション制御

システムデータベースセットアップ では、トランザクションの開始・終了処理は行いません。
すべてのDDLは、トランザクション制御なしで発行されます。

例外発生時の動作

システムデータベースセットアップの実行中に例外が発生した場合、システムデータベースセットアップは即時停止し、後続のセットアップ処理は実行しません。

コラム

システムデータベースセットアップのすべての処理が正常に完了しない限り、 intra-mart Accel Platform の起動が正しく行えません。

システムデータベースセットアップ途中で例外が発生した場合は、後続のセットアップを続ける意味がないため、即時停止します。