Hitachi

ノンストップデータベース HiRDB Version 9 コマンドリファレンス(Windows(R)用)


5.13 エラー時のデータベースの状態とその回復方法

データロード中にエラーが発生した場合の,データベースの状態とその回復方法を次の表に示します。

また,LOB列へのデータロード中にエラーが発生した場合の,データベースの状態とその回復方法を表「データベースの状態とその回復方法(LOB列へのデータロード中にエラーが発生した場合)」に示します。また,入力データエラー時の,データベースの状態とその回復方法を表「データベースの状態とその回復方法(入力データエラーの場合)」に示します。

表中の区分の状態とは,エラー発生時のデータベースの状態を示します。また,回復とは,回復方法を示します。

回復方法の実施は,発生したエラー原因を取り除いた後に行ってください。

表5‒58 データベースの状態とその回復方法(データロード中にエラーが発生した場合)(1/3)

オプション

区分

エラー発生直前の出力メッセージ

-l

-i

1.

2.

3.

なし(制御文エラーは除く)

KFPL00721-I

行データ削除

KFPL00702-I

データロード開始

a又はp

s

状態

実行前の状態

回復

再実行

再実行

再実行

c

状態

実行前の状態

回復

再実行

再実行

再実行

n

状態

実行前の状態

回復

再実行

再実行

再実行

x

状態

実行前の状態

回復

再実行

再実行

再実行

n

s

状態

保証なし

保証なし

保証なし

回復

DB回復後再実行

DB回復後再実行

DB回復後再実行

c

状態

保証なし

保証なし

保証なし

回復

DB回復後再実行

DB回復後再実行

DB回復後再実行

n

状態

保証なし

保証なし

保証なし

回復

DB回復後再実行

DB回復後再実行

DB回復後再実行

x

状態

保証なし

保証なし

保証なし

回復

DB回復後再実行

DB回復後再実行

DB回復後再実行

表5‒59 データベースの状態とその回復方法(データロード中にエラーが発生した場合)(2/3)

オプション

区分

エラー発生直前の出力メッセージ

-l

-i

4.

5.

6.

KFPL00800-I

同期点通知

KFPL15225-E

ロールバック

KFPL24510-E

エラーデータ検知

a又はp

s

状態

KFPL00800-Iに出力された行まで格納済み

3.又は4.の状態

KFPL15225-Eが出力されている場合は5.の状態。

出力されていない場合は,KFPL24509-Eに出力された行の直前の行まで格納済み。

回復

再実行

再実行

5.の状態の場合は再実行。

途中まで行が格納されている場合は,-rオプション指定で再実行。

c

状態

KFPL00800-Iに出力された行まで格納済み

3.又は4.の状態

KFPL15225-Eが出力されている場合は5.の状態。

出力されていない場合は,KFPL24509-Eに出力された行の直前の行まで格納済み。

回復

再実行

再実行

5.の状態の場合は再実行。

途中まで行が格納されている場合は,-rオプション指定で再実行。

n

状態

KFPL00800-Iに出力された行まで格納済み

3.又は4.の状態

KFPL15225-Eが出力されている場合は5.の状態。

出力されていない場合は,KFPL24509-Eに出力された行の直前の行まで格納済み。

回復

再実行

再実行

5.の状態の場合は再実行。

途中まで行が格納されている場合は,-rオプション指定で再実行。

x

状態

KFPL00800-Iに出力された行まで格納済み

3.又は4.の状態

KFPL15225-Eが出力されている場合は5.の状態。

出力されていない場合は,KFPL24509-Eに出力された行の直前の行まで格納済み。

回復

再実行

再実行

5.の状態の場合は再実行。

途中まで行が格納されている場合は,-rオプション指定で再実行。

n

s

状態

保証なし

KFPL15225-Eが出力されている場合は5.の状態。

出力されていない場合は,KFPL24509-Eに出力された行の直前の行まで格納済み。

回復

DB回復後再実行

5.の状態の場合は再実行。

途中まで行が格納されている場合は,-rオプション指定で再実行。

c

状態

保証なし

KFPL15225-Eが出力されている場合は5.の状態。

出力されていない場合は,KFPL24509-Eに出力された行の直前の行まで格納済み。

回復

DB回復後再実行

5.の状態の場合は再実行。

途中まで行が格納されている場合は,-rオプション指定で再実行。

n

状態

保証なし

KFPL15225-Eが出力されている場合は5.の状態。

出力されていない場合は,KFPL24509-Eに出力された行の直前の行まで格納済み。

回復

DB回復後再実行

5.の状態の場合は再実行。

途中まで行が格納されている場合は,-rオプション指定で再実行。

x

状態

保証なし

KFPL15225-Eが出力されている場合は5.の状態。

出力されていない場合は,KFPL24509-Eに出力された行の直前の行まで格納済み。

回復

DB回復後再実行

5.の状態の場合は再実行。

途中まで行が格納されている場合は,-rオプション指定で再実行。

(凡例)

−:該当するオプションを指定した場合,該当するメッセージは出力されないことを示します。

注※

-rオプション指定で再実行する場合,-dオプションは指定しないでください。

表5‒60 データベースの状態とその回復方法(データロード中にエラーが発生した場合)(3/3)

オプション

区分

エラー発生直前の出力メッセージ

-l

-i

7.

8.

9.

KFPL00703-I

データロード完了

KFPL00715-I

インデクスの作成開始

KFPL00716-I

インデクスの作成完了

a又はp

s

状態

表及びインデクス作成完了

回復

不要※1

c

状態

表作成完了

表作成完了

表及びインデクス作成完了

回復

pdrorg -k ixmkで,インデクスの一括作成を実行

pdrorg -k ixmkで,インデクスの一括作成を実行※2

不要※1※2

n

状態

表作成完了

回復

pdrorg -k ixmkで,インデクスの一括作成を実行※1

x

状態

表作成完了

回復

pdrorg -k ixmkで,インデクスの一括作成を実行※1

n

s

状態

表作成完了

回復

pdrorg -k ixmkで,インデクスの一括作成を実行※1

c

状態

表作成完了

表作成完了

表及びインデクス作成完了

回復

DB回復後再実行※3

DB回復後再実行※3

不要※1

n

状態

表作成完了

回復

pdrorg -k ixmkで,インデクスの一括作成を実行※1

x

状態

表作成完了

回復

pdrorg -k ixmkで,インデクスの一括作成を実行※1

(凡例)

−:該当するオプションを指定した場合,該当するメッセージは出力されないことを示します。

注※1

-k d以外でLOB列にデータロードしている場合,表「データベースの状態とその回復方法(LOB列へのデータロード中にエラーが発生した場合)」も参照してください。

注※2

インデクス格納用RDエリアが複数ある場合,KFPL00716-Iメッセージが出力されたインデクスが作成済みですが,出力されていないインデクスは未作成となります。未作成のインデクスに対してインデクスの一括作成を実行してください。

注※3

表格納用RDエリアとインデクス格納用RDエリアが異なる場合,表格納用RDエリアのログレス閉塞を解除した後,インデクス格納用RDエリアを再初期化してpdrorg -k ixrcを実行してもかまいません。

表5‒61 データベースの状態とその回復方法(LOB列へのデータロード中にエラーが発生した場合)

制御文

-lオプション

区分

エラー発生直前の出力メッセージ

KFPL00707-I

LOB列へのデータロード開始

KFPL00708-I

LOB列へのデータロード完了

LOB列構成基表とLOB列を同時にデータロードする場合:

source文

lobmid文

lobdata文

a又はp

状態

USER

LOB列構成基表とインデクス作成完了

表作成完了

ULOB

-dオプション指定の場合は空。なしの場合は実行前状態。

LOB列作成完了

回復

USER

不要

不要

ULOB

LOB列にだけデータロード※2

不要※2

n

状態

USER

ログレス閉塞

表作成完了

ULOB

保証なし

LOB列作成完了

回復

USER

DB回復後再実行※1

不要

ULOB

DB回復後再実行※1

不要

LOB列にだけデータロードする場合:

lobmid文

lobdata文

a又はp

状態

USER

ULOB

実行前状態(-dオプションは無視されます)

LOB列作成完了

回復

USER

ULOB

再実行

不要

n

状態

USER

ULOB

保証なし

LOB列作成完了

回復

USER

ULOB

DB回復後再実行

不要

(凡例)

−:該当するオプションを指定した場合,該当するメッセージは出力されないことを示します。

USER:ユーザ用RDエリア

ULOB:ユーザLOB用RDエリア

注※1

ログレスモードの場合,LOB列へのデータロード中に異常終了したときでも,表(LOB列構成基表,LOB列,LOB属性の抽象データ型列,及びインデクス)をバックアップから回復した後,再度,LOB列構成基表,及びLOB列へデータロードする必要があります。

注※2

ユーザLOB用RDエリアが複数ある場合,KFPL00708-Iメッセージが出力されているLOB列は作成済みとなります。出力されていないLOB列は未作成のため,未作成のLOB列に対してデータロードを実行してください。

表5‒62 データベースの状態とその回復方法(入力データエラーの場合)

-eオプション

source文のerrdataオペランド

区分

ロールバック不要エラー

(リターンコード4で終了)

ロールバック要エラー

(リターンコード8で終了)

なし

なし

状態

エラー情報ファイルに出力された行以外はDBに格納済み

-l n以外の場合はpdload実行前状態。

-l nの場合は保証なし。

回復

入力データファイル中の該当するデータを別ファイルにして修正し,再度データロード

-l n以外の場合は,入力データを修正して再度データロード。

-l nの場合は,DB回復後,入力データを修正して再度データロード。

あり

状態

エラー情報ファイルに出力された行以外はDBに格納済み

-l n以外の場合はpdload実行前状態。

-l nの場合は保証なし。

回復

エラーデータファイルに出力されたデータを修正し,再度データロード

-l n以外の場合は,入力データを修正して再度データロード。

-l nの場合は,DB回復後,入力データを修正して再度データロード。

あり

該当しません

状態

KFPL24509-Eに出力された行の直前までDBに格納済み

-l n以外の場合はpdload実行前状態。

-l nの場合は保証なし。

回復

KFPL24509-Eに出力された行のデータを修正して,-rオプション指定で再度データロード

-l n以外の場合は,入力データを修正して再度データロード。

-l nの場合は,DB回復後,入力データを修正して再度データロード。

ロールバック要エラーには,LOB列格納データエラー,可変長文字列の長さ部が負の値,及び繰返し列の要素数が負の値があります。

インデクス更新モード(-i s)以外でのキー値重複エラーは,入力データエラーではなく,表とインデクスが不一致となるDB破壊エラーとなります。回復方法は,DBをpdload実行前の状態に戻して,入力データを修正し,再度データロードをしてください。