スケーラブルデータベースサーバ HiRDB Version 8 システム運用ガイド(UNIX(R)用)

[目次][索引][前へ][次へ]

13.16.3 例題3(XML型の列を含むデータを,表単位で移行する場合)

表の列にXML型を含むデータを,表単位で移行する場合の方法を説明します。

TABLE01とTABLE02は表定義が同じとします。TABLE01のデータをTABLE02に移行(コピー)します。

<この項の構成>
(1) pdholdコマンドでアンロード及びリロード対象RDエリアを閉塞します
(2) アンロード時に実行するpdrorgコマンドの制御文ファイルを作成します
(3) pdrorgコマンドでTABLE01のデータをアンロードします
(4) リロード時に実行するpdrorgコマンドの制御文ファイルを作成します
(5) pdrorgコマンドでTABLE02にデータをリロードします
(6) リロード対象RDエリアのバックアップを取得します
(7) pdrelsコマンドでRDエリアの閉塞を解除します

(1) pdholdコマンドでアンロード及びリロード対象RDエリアを閉塞します

 
pdhold -r RDAREA01,RDAREA02,…
 

(2) アンロード時に実行するpdrorgコマンドの制御文ファイルを作成します

制御文ファイル(/pdrorg/rorg01)の内容を次に示します。

(a) HiRDB/シングルサーバの場合
 
unload /pdrorg/unfile1                                1
unld_func type=XML,func=EXTRACTS(XML)                 2
 

〔説明〕
  1. アンロードデータファイルの名称を指定します。
  2. 表にXML型が定義されているため,コンストラクタパラメタ逆生成関数の情報を指定します。
(b) HiRDB/パラレルサーバの場合
 
unload bes1:/pdrorg/unfile1                          1
unld_func type=XML,func=EXTRACTS(XML)                2
 

〔説明〕
  1. アンロードデータファイルの名称を指定します。
  2. 表にXML型が定義されているため,コンストラクタパラメタ逆生成関数の情報を指定します。

(3) pdrorgコマンドでTABLE01のデータをアンロードします

 
pdrorg -k unld -t TABLE01 -g /pdrorg/rorg01
 

〔説明〕
-k:アンロードをするためunldを指定します。
-t:アンロードする表の名称を指定します。
-g:HiRDB/パラレルサーバで,TABLE01をサーバ間横分割している場合に指定します。-gオプションを指定すると,アンロードデータファイルが一元化されます(一つになります)。
/pdrorg/rorg01:pdrorgコマンドの制御文ファイル名を指定します。

(4) リロード時に実行するpdrorgコマンドの制御文ファイルを作成します

制御文ファイル(/pdload/reld01)の内容を次に示します。

(a) HiRDB/シングルサーバの場合
 
unload /pdrorg/unfile1                                1
reld_func type=XML,func=XML(binary)                   2
tblname TABLE01                                       3
 

〔説明〕
  1. アンロードデータファイルの名称を指定します。
  2. 表にXML型が定義されているため,コンストラクタ関数の情報を指定します。
  3. 別表にリロードするため,tblname文を指定します。
(b) HiRDB/パラレルサーバの場合
 
unload bes1:/pdrorg/unfile1                           1
reld_func type=XML,func=XML(binary)                   2
tblname TABLE01                                       3
 

〔説明〕
  1. アンロードデータファイルの名称を指定します。
  2. 表にXML型が定義されているため,コンストラクタ関数の情報を指定します。
  3. 別表にリロードするため,tblname文を指定します。

(5) pdrorgコマンドでTABLE02にデータをリロードします

 
pdrorg -k reld -t TABLE02 -g /pdrorg/reld01
 

〔説明〕
-k:リロードをするためreldを指定します。
-t:リロードする表の名称を指定します。
-g:(3)の操作で-gオプションを指定した場合は,ここでも-gオプションを指定してください。
/pdrorg/reld01:pdrorgコマンドの制御文ファイル名を指定します。

(6) リロード対象RDエリアのバックアップを取得します

更新前ログ取得モード(省略値)でリロードを実行したため,リロード対象RDエリアのバックアップを取得してください。バックアップの取得方法については,「6.4.8 例題8(RDエリア単位にバックアップを取得する場合)」を参照してください。

(7) pdrelsコマンドでRDエリアの閉塞を解除します

 
pdrels -r RDAREA01,RDAREA02,…
 

 

コマンドの実行後,実行結果が正しいかどうか確認することをお勧めします。コマンドの実行結果の確認方法については,マニュアル「HiRDB Version 8 コマンドリファレンス」を参照してください。