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

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

13.14.2 例題2(FIXハッシュ分割の場合)

表(TABLE01)のハッシュ関数をHASH6に変更します。TABLE01はFIXハッシュ分割しています。

<この項の構成>
(1) pdholdコマンドでアンロード対象RDエリアを閉塞します
(2) pdrorgコマンドでTABLE01のデータをアンロードします
(3) pdrelsコマンドでRDエリアの閉塞を解除します
(4) PURGE TABLE文でTABLE01のデータを削除します
(5) ALTER TABLEでハッシュ関数を変更します
(6) pdholdコマンドでリロード対象RDエリアを閉塞します
(7) pdrorgコマンドでTABLE01にデータをリロードします
(8) リロード対象RDエリアのバックアップを取得します
(9) pdrelsコマンドでRDエリアの閉塞を解除します

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

 
pdhold -r RDAREA01,RDAREA02,…
 

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

 
pdrorg -k unld -j -t TABLE01 -g /pdrorg/unld02
 

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

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

 
pdrels -r RDAREA01,RDAREA02,…
 

(4) PURGE TABLE文でTABLE01のデータを削除します

 
PURGE TABLE TABLE01;
 

FIXハッシュ分割した表のハッシュ関数を変更する場合は,表のデータを削除する必要があります。

(5) ALTER TABLEでハッシュ関数を変更します

 
ALTER TABLE TABLE01 CHANGE HASH HASH6;
 

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

 
pdhold -r RDAREA01,RDAREA02,…
 

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

 
pdrorg -k reld -j -t TABLE01 -g /pdrorg/reld02
 

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

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

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

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

 
pdrels -r RDAREA01,RDAREA02,…
 

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