Hitachi

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


15.4.2 例題1(インデクスが定義されている場合)

ユーザ用RDエリア(RDAREA1)を再初期化します。このとき,RDエリアの容量を大きくします。

〈手順〉
  1. pdfstatfsコマンドでHiRDBファイルシステム領域に空きがあるか確認します。

  2. HiRDBファイルシステム領域を準備します。

  3. pdholdコマンドでRDAREA1を閉塞します。

  4. pdlogswap -d sys -wコマンドで,システムログファイルをスワップします。

  5. pdcopyコマンドでバックアップを取得します。

  6. pdrorgコマンドの制御文ファイルを作成します。

  7. pdrorgコマンドでTABLE1のデータをアンロードします。

  8. pdcloseコマンドでRDAREA1をクローズします。

  9. pdmodコマンドの制御文ファイルを作成します。

  10. pdmodコマンドでRDAREA1を再初期化(容量拡張)します。

  11. pdopenコマンドでRDAREA1をオープンします。

  12. pdrorgコマンドの制御文ファイルを作成します。

  13. pdrorgコマンドでTABLE1のデータをリロードします。

  14. pdlogswap -d sys -wコマンドで,システムログファイルをスワップします。

  15. pdcopyコマンドでバックアップを取得します。

  16. pdrelsコマンドでRDAREA1の閉塞を解除します。

手順の数字はこの後で説明している( )レベルに対応しています。例えば,3の操作は(3)で説明しています。

〈この項の構成〉

(1) pdfstatfsコマンドでHiRDBファイルシステム領域に空きがあるか確認します

pdfstatfs C:\rdarea\area01

(2) HiRDBファイルシステム領域を準備します

(1)の結果,HiRDBファイルシステム領域に空きがないとします。再初期化するときにRDエリアの容量を大きくするため,次に示すどれかの方法でHiRDBファイルシステム領域を準備してください。

  1. 既存のHiRDBファイルシステム領域より大きいHiRDBファイルシステム領域を新規に割り当てる

  2. 既存のHiRDBファイルシステム領域に加えて新規のHiRDBファイルシステム領域を割り当てる

  3. 既存のHiRDBファイルシステム領域を大きくする

ここでは,1の方法でHiRDBファイルシステム領域を準備します。

pdfmkfs -n 100 -l 10 -k DB -i C:\rdarea\area02

(3) pdholdコマンドでRDAREA1を閉塞します

pdhold -r RDAREA1

(4) pdlogswap -d sys -wコマンドで,システムログファイルをスワップします

pdlogswap -d sys -w

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

pdcopy -m C:\rdarea\mast\mast01 -M r -a -b C:\pdcopy\backup01 -p C:\pdcopy\list01
〔説明〕

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

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

-a:このオプションを指定すると,全RDエリアのバックアップを取得します。RDエリアを再初期化すると,「同時にバックアップを取得する必要があるRDエリア」で説明しているRDエリアが更新されるため,6.3で説明しているRDエリアのバックアップを取得する必要があります。ここでは全RDエリアのバックアップを取得します。

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

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

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

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

pdrorgコマンドのunload文を記述した制御文ファイル(C:\pdrorg\unld01)を作成します。制御文ファイルの内容を次に示します。

unload C:\unld\unldfile
〔説明〕

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

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

pdrorg -k unld -t TABLE1 C:\pdrorg\unld01
〔説明〕

-k:アンロードをするためunldを指定します。

-t:アンロードをする表の名称を指定します。

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

(8) pdcloseコマンドでRDAREA1をクローズします

pdclose -r RDAREA1

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

pdmodコマンドのinitialize rdarea文を記述した制御文ファイル(C:\pdmod\init01)を作成します。制御文ファイルの内容を次に示します。

initialize rdarea RDAREA1                               1
   with reconstruction                                  2
   file name "C:\rdarea\area02\file01"                  3
      initial 3000 segments;                            4
〔説明〕

RDAREA1には新規追加したHiRDBファイルシステム領域を割り当てます。

  1. 再初期化するRDエリア(RDAREA1)を指定します。

  2. 再初期化前とファイル構成が変わるため,with reconstructionを指定します。

  3. RDエリアを構成するHiRDBファイルを指定します。

  4. HiRDBファイルのセグメント数を指定します。

(10) pdmodコマンドでRDAREA1を再初期化(容量拡張)します

pdmod -a C:\pdmod\init01
〔説明〕

-a:(9)で作成したpdmodコマンドの制御文ファイル名を指定します。

(11) pdopenコマンドでRDAREA1をオープンします

pdopen -r RDAREA1

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

pdrorgコマンドのunload文index文,及びsort文を記述した制御文ファイル(C:\pdrorg\reld01)を作成します。制御文ファイルの内容を次に示します。

unload C:\unld\unldfile                         1
index INDEX1 C:\unld\index_inf                  2
sort C:\tmp\sortwork                            3
〔説明〕
  1. アンロードファイルの名称を指定します。

  2. インデクス識別子(INDEX1),及びインデクス情報ファイル名(C:\unld\index_inf)を指定します。

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

(13) pdrorgコマンドでTABLE1のデータをリロードします

pdrorg -k reld -t TABLE1 C:\pdrorg\reld01
〔説明〕

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

-k:リロードをするためreldを指定します。

-t:リロードをする表の名称を指定します。

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

(14) pdlogswap -d sys -wコマンドで,システムログファイルをスワップします

pdlogswap -d sys -w

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

pdcopy -m C:\rdarea\mast\mast01 -M r -a -b C:\pdcopy\backup02 -p C:\pdcopy\list02

RDエリアを再初期化すると,「同時にバックアップを取得する必要があるRDエリア」で説明しているRDエリアが更新されるため,6.3で説明しているRDエリアのバックアップを取得する必要があります。ここでは全RDエリアのバックアップを取得します。バックアップの取得については,「バックアップの取得方法」を参照してください。

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

pdrels -r RDAREA1

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