付録E.5 リファレンスファイル管理機能を使用するためのデータベース移行

リファレンスファイル管理機能非対応のデータベースから,リファレンスファイル管理機能対応のデータベースに移行するための,移行手順およびデータベース移行ツールについて説明します。

<この項の構成>
(1) 移行手順
(2) EDMChangeRefFile(リファレンスファイル管理機能を使用するためのデータベース移行ツール)の文法
(3) エラー発生時の対策手順
(4) EDM_RDAREA_REFFILE.txtの内容

(1) 移行手順

データベースの移行手順について説明します。

  1. データベースのバックアップを作成します。
    • データベースのエラーによってデータベース移行ツールが異常終了した場合,このバックアップからデータベースを回復します。
  2. RDエリア定義情報ファイルを作成します。
    • 次のファイルを基に作成してください。
      /opt/HiEDMS/sample/EDM_RDAREA_REFFILE.txt
    • 手順4.実行後に出力されるデータベース定義文のRDエリア名をあらかじめ指定しない場合は,この作業は不要です。ただし,手順4.実行後,データベース定義文格納ファイル内のRDエリア名を変更する必要があります。
    • RDエリア定義情報ファイルについては,「4.8 RDエリア定義情報ファイル」を参照してください。
  3. RDエリアを追加する必要がある場合は,HiRDBのデータベース構成変更ユティリティ(pdmod)を実行して,RDエリアを追加します。
    • edmClass_ContentReferenceクラスの追加またはEDMSMETAREGENVIDクラスの構成変更によってRDエリアの構成を拡張する必要がある場合は,RDエリアを拡張してください。
    • HiRDBのデータベース構成変更ユティリティ(pdmod)については,マニュアル「HiRDB コマンドリファレンス」を参照してください。
  4. EDMChangeRefFileコマンドを実行します。
    データベース定義文が出力されます。
    • このコマンドを実行する前に,データベースを起動してください。
    • この作業は,DocumentBrokerの実行環境ディレクトリを環境変数「DOCBROKERDIR」に指定していることを前提としています。
    • このコマンドの実行中に,ほかのコマンドは実行できません。
    • 手順2.でRDエリア定義情報ファイルを作成していない場合は,このコマンドを実行したあと,データベース定義文格納ファイル内のRDエリア名を変更してください。
    • このコマンドは,EDMSMETAREGENVIDクラスを使用するため,必ず複数の実行環境機能を使用できる環境で実行してください。
      複数の実行環境機能を使用できる環境かどうかは,DocumentBrokerのバージョンが02-40以降の場合に,DocumentBroker実行環境の情報の登録コマンド(EDMRegEnvID)に-lオプションを指定して実行することで確認できます。コマンドを実行すると,複数の実行環境機能を使用できる場合は,登録されている実行環境の情報が表示されます。複数の実行環境機能を使用できない場合はエラーとなり,メッセージKMBR12307-Eが出力されます。DocumentBroker実行環境の情報の登録コマンドについては,「7.3 コマンドの文法」の「EDMRegEnvId(DocumentBroker実行環境の情報の登録)」を参照してください。メッセージの詳細については,マニュアル「DocumentBroker Version 3 メッセージ」を参照してください。
      複数の実行環境機能を使用できない環境からリファレンスファイル管理機能を使用できる環境へ移行する場合は,複数の実行環境機能を使用できる環境に移行したあと,このコマンドを実行してください。複数の実行環境機能を構築する方法については,「3.15 複数の実行環境を構築する場合の設定」を参照してください。
    • このコマンドは,実行環境識別子が0の環境で実行してください。
    • EDMChangeRefFileコマンドの詳細については,「(2) EDMChangeRefFile(リファレンスファイル管理機能を使用するためのデータベース移行ツール)の文法」を参照してください。
  5. データベース定義文格納ファイルを入力ファイルとして,HiRDBのデータベース定義ユティリティ(pddef)を実行し,スキーマの定義内容を更新します。
    手順4.実行後に出力されたデータベース定義文を基に,スキーマの定義内容が更新され,リファレンスファイル管理機能に対応したデータベースのスキーマがHiRDBの表に格納されます。
    • HiRDBのデータベース定義ユティリティ(pddef)については,マニュアル「HiRDB コマンドリファレンス」を参照してください。

(2) EDMChangeRefFile(リファレンスファイル管理機能を使用するためのデータベース移行ツール)の文法

EDMChangeRefFileコマンドの詳細について説明します。
機能
リファレンスファイル管理機能非対応のデータベースから,リファレンスファイル管理機能対応のデータベースに移行します。
形式

EDMChangeRefFile -o データベース定義文格納ファイル名
              〔-r RDエリア定義情報ファイル名〕

オプション
-o データベース定義文格納ファイル名
出力されたデータベース定義文を格納するファイルのパス名を指定します。
-r RDエリア定義情報ファイル名
RDエリア定義情報ファイルのパス名を指定します。-oオプションで指定したデータベース定義文格納ファイル内のRDエリア名を,このオプションで指定するRDエリア定義情報ファイルの定義内容に従って出力する場合に指定します。指定を省略した場合は,このコマンドを実行したあと,データベース定義文格納ファイル内のRDエリア名を変更してください。RDエリア定義情報ファイルについては,「4.8 RDエリア定義情報ファイル」を参照してください。

(3) エラー発生時の対策手順

データベースのエラーによってデータベース移行ツールが異常終了した場合,次に示す手順に従って対策を実施してください。

  1. 移行手順1.で作成したバックアップから,データベースを回復します。
  2. エラーメッセージを基に,エラーの要因を取り除きます。
  3. 移行手順3.から再度実行します。

(4) EDM_RDAREA_REFFILE.txtの内容

EDM_RDAREA_REFFILE.txtの内容を次に示します。

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Area Definition for table                                               ;
;    Format : class=class_name,area=area_name                             ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[TableArea]
class=edmClass_ContentReference,area=USERAREA
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Area Definition for Index                                               ;
;    Format : class=class_name,prop=property_name,{prop=property_name,...};
;                              area=area_name                             ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[IndexArea]
class=edmClass_ContentReference,prop=dmaProp_OIID,area=INDEXAREA
class=edmClass_ContentReference,prop=ThisPropertyDescription,area=INDEXAREA
class=edmClass_ContentReference,prop=edmProp_ReferenceType,area=INDEXAREA
class=edmClass_ContentReference,prop=edmProp_Parent,area=INDEXAREA