Hitachi

ノンストップデータベース HiRDB Version 10 システム運用ガイド(Windows(R)用)


12.1.5 例題1(表定義情報と表データを同時に移行する場合)

HiRDBシステムAの表(TABLE1)をHiRDBシステムBに移行します。

なお,移行先システムには,同じ名称のRDエリア(RDAREA1〜RDAREA6)が作成されているとします。

[図データ]

〈この項の構成〉

(1) pdholdコマンドでRDAREA1〜RDAREA6を閉塞します

pdhold -r RDAREA1,RDAREA2,RDAREA3,RDAREA4,RDAREA5,RDAREA6

(2) pdrorgコマンドの制御文ファイルを作成します

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

(a) HiRDB/シングルサーバの場合

unload C:\file\export_file
〔説明〕

表移行用アンロードファイルの名称を指定します。

(b) HiRDB/パラレルサーバの場合

unload bes1:C:\file\export_file
〔説明〕

表移行用アンロードファイル(bes1用)の名称を指定します。-gオプションが仮定されるため,表移行用アンロードファイルを1か所に作成します。

(3) pdrorgコマンドでTABLE1をエクスポートします

pdrorg -k unld -W bin -w -t TABLE1 C:\pdrorg\rorg01
〔説明〕

-k:エクスポート(アンロード)をするためunldを指定します。

-W:表移行用アンロードファイルを作成するためbin -wを指定します。

-t:エクスポートする表の名称を指定します。

C:¥pdrorg¥rorg01:(2)で作成したpdrorgコマンドの制御文ファイル名を指定します。

(4) pdrelsコマンドでRDAREA1〜RDAREA6の閉塞を解除します

pdrels -r RDAREA1,RDAREA2,RDAREA3,RDAREA4,RDAREA5,RDAREA6

(5) 表移行用アンロードファイルをCMTなどの媒体に格納します

(3)で作成した表移行用アンロードファイルをCMTなどの媒体に格納します。

移行元システム(HiRDBシステムA)での作業はこれで終わりです。

(6) 移行先システムに表移行用アンロードファイルを格納します

これ以降は移行先システム(HiRDBシステムB)での作業になります。

CMTなどの媒体に格納した表移行用アンロードファイルを移行先システムに格納します。

(7) インポートを実行するユーザのスキーマをpddefコマンドで定義します

pddef
   CREATE SCHEMA AUTHORIZATION USR01;

(8) システムログファイルをスワップします

バックアップを取得する前に,pdlogswapコマンドでシステムログファイルをスワップします。

pdlogswap -d sys -w
〔説明〕

HiRDB/パラレルサーバの場合,-sオプションを指定して,バックアップ対象の全サーバ分pdlogswapコマンドを実行します。

(9) pdcopyコマンドでバックアップを取得します

pdcopy -m C:\rdarea\mast\mast01 -M r
-r RDMAST,RDDIR,RDDIC,RDAREA1,RDAREA2,RDAREA3,RDAREA4,RDAREA5,RDAREA6
-b C:\pdcopy\backup01 -p C:\pdcopy\list01
〔説明〕

データベース移行中の障害発生に備えてバックアップを取得します。バックアップを取得するRDエリアを次に示します。

  • マスタディレクトリ用RDエリア

  • データディレクトリ用RDエリア

  • データディクショナリ用RDエリア

  • 表をインポートするユーザ用RDエリア及びユーザLOB用RDエリア(RDAREA1〜RDAREA6)

-m:マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。

-M:バックアップ取得モードを指定します。

-r:バックアップを取得するRDエリアの名称を指定します。

-b:バックアップファイル名を指定します。

-p:pdcopyコマンドの処理結果リストの出力先を指定します。

バックアップの取得については,「バックアップの取得方法」を参照してください。

(10) pdloadコマンドの制御文ファイルを作成します

制御文ファイル(C:\pdload\load01)の内容を次に示します。

(a) HiRDB/シングルサーバの場合

source C:\file\export_file                       1
idxwork C:\idxwork                               2
sort C:\sortwork                                 3
〔説明〕
  1. 表移行用アンロードファイルの名称を指定します。

  2. インデクス情報ファイル作成用のディレクトリ名を指定します。このディレクトリ下にインデクス情報ファイルが作成されます。

  3. ソート用ワークディレクトリの名称を指定します。

(b) HiRDB/パラレルサーバの場合

source bes1:C:\file\export_file          1
idxwork bes1 C:\idxwork                  2
sort bes1 C:\sortwork                    3
idxwork bes2 C:\idxwork                  4
sort bes2 C:\sortwork                    5
〔説明〕
  1. 表移行用アンロードファイル(bes1用)の名称を指定します。

  2. インデクス情報ファイル作成用(bes1用)のディレクトリ名を指定します。このディレクトリ下にインデクス情報ファイルが作成されます。

  3. ソート用ワークディレクトリ(bes1用)の名称を指定します。

  4. インデクス情報ファイル作成用(bes2用)のディレクトリ名を指定します。このディレクトリ下にインデクス情報ファイルが作成されます。

  5. ソート用ワークディレクトリ(bes2用)の名称を指定します。

(11) pdloadコマンドでTABLE1をインポートします

pdload -b -W -w all TABLE1 C:\pdload\load01
〔説明〕

インデクス(INDEX1)も同時に再作成するため,-iオプションを省略してインデクス一括作成モードでインデクスを一括作成します。

-b:表移行用アンロードファイルを入力するため,-W -wを指定します。また,表定義情報と表データを同時にインポートするため,allを指定します。

C:¥pdload¥load01:(11)で作成したpdloadコマンドの制御文ファイル名を指定します。

このとき,移行元システムと移行先システムでエンディアンが異なる場合,インポート時にエンディアン変換をします。なお,インポート時に障害が発生した場合の対処については,「インポート時に障害が発生した場合の対処方法」を参照してください。

(12) システムログファイルをスワップします

バックアップを取得する前に,pdlogswapコマンドでシステムログファイルをスワップします。

pdlogswap -d sys -w
〔説明〕

HiRDB/パラレルサーバの場合,-sオプションを指定して,バックアップ対象の全サーバ分pdlogswapコマンドを実行します。

(13) pdcopyコマンドでバックアップを取得します

pdcopy -m C:\rdarea\mast\mast01 -M r
-r RDMAST,RDDIR,RDDIC,RDAREA1,RDAREA2,RDAREA3,RDAREA4,RDAREA5,RDAREA6
-b C:\pdcopy\backup02 -p C:\pdcopy\list02
〔説明〕

バックアップを取得するRDエリアを次に示します。

  • マスタディレクトリ用RDエリア

  • データディレクトリ用RDエリア

  • データディクショナリ用RDエリア

  • 表をインポートするユーザ用RDエリア及びユーザLOB用RDエリア(RDAREA1〜RDAREA6)

-m:マスタディレクトリ用RDエリアの先頭のHiRDBファイル名称を指定します。

-M:バックアップ取得モードを指定します。

-r:バックアップを取得するRDエリアの名称を指定します。

-b:バックアップファイル名を指定します。

-p:pdcopyコマンドの処理結果リストの出力先を指定します。

バックアップの取得については,「バックアップの取得方法」を参照してください。