Hitachi

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


5.12.2 注意事項

〈この項の構成〉

(1) ユティリティ実行後の結果について

pdloadの結果は,pddbstで確認できます(UAPの実行,又はpdrorgでのアンロードでも確認できます)。また,pdloadの処理が終了した場合は,リターンコードが返ります。pdloadのリターンコードと,監査証跡表にpdloadを実行した場合のリターンコードを次の表に示します。

表5‒52 pdloadのリターンコード

リターンコード

意味

対処方法

0

正常終了。

入力データファイル中のすべてのデータをデータロードしました。

なし。

正常終了。

入力データファイルの全データを,分割入力データファイルに出力しました。

分割入力データファイルを使用して,RDエリア単位にデータロードをしてください。

4

入力データのエラー。

入力データファイル中の一部のデータにエラーがあるため,データロードの処理をスキップしました。

エラー情報ファイルを参照し,入力データファイルのエラーデータを修正してから,再度データロードを実行してください。

入力データのエラー。

入力データファイル中の正常なデータは分割入力データファイルに出力しましたが,一部のエラーデータは分割入力データファイルに出力していません(-eオプション指定時は,エラーデータ検知時点まで分割入力データファイルに出力)。

エラー情報ファイルを参照し,入力データファイルのエラーデータを修正してから,再度分割入力データファイルを作成してください。

8

入力データエラー。

option文のdataerrオペランドを指定した場合は,入力データファイル中にエラーがあるため,データロード処理をロールバックしました。

エラーの入力データを修正して,再度データロードを実行してください。

キー重複エラー。

インデクスの一括作成中にキー重複エラーを検知しました。

バックアップからDBを回復して,エラーの入力データを修正してください。その後,再度データロードを実行してください。

異常終了。

エラーが発生したため,データロードの処理を途中で終了しました。

エラー原因を取り除いて,再度データロードを実行してください。

異常終了。

入力データファイルのデータを,分割入力データファイルに出力できませんでした。

エラーメッセージを参照してエラーの原因を取り除いて,再度分割入力データファイルを作成してください。

表5‒53 pdloadのリターンコード(監査証跡表の場合)

リターンコード

意味

対処方法

0

正常終了。

srcuoc文に指定した監査証跡ファイルの全世代のデータを監査証跡表にデータロードしました。

なし。

4

警告終了。

srcuoc文に指定した監査証跡ファイルの中で,データロード待ち状態のファイルは監査証跡表にデータロードしましたが,閉塞又はデータロード済み状態のファイルはデータロードの処理をスキップしました。

監査証跡ファイルが閉塞状態でスキップした場合,閉塞の原因を取り除いて,再度データロードを実行してください。

監査証跡ファイルがデータロード済み状態でスキップした場合,通常はデータロード済みのため対処は不要です。あえてデータロードする必要があるときは,srcuoc文のmodeオペランドにforceを指定して再度実行してください。

8

異常終了。

エラーが発生したため,データロードの処理を途中で終了しました。

エラー原因を取り除いて,再度データロードを実行してください。

(2) ユティリティ実行中の処理の中断について

pdload実行中に処理を中断したい場合は,pdcancelコマンドを使用します。なお,pdloadが無応答障害(定例ジョブなど,一定時間でデータロード処理が終わるはずなのに終わらない)と判断して強制終了させる場合は,pdlsコマンド(-d rpc -a指定)の表示結果をリダイレクトでファイルに取得してください。

この場合,作成モード(-dオプション指定)でpdloadを実行しているときは,表の格納データはすべて削除されます。また,追加モード(-dオプションなし)でpdloadを実行しているときは,処理がロールバックされます。

再編成時期予測機能を使用している場合,pdloadをシグナル割り込みで強制終了すると,運用履歴表が更新できません。再編成時期予測機能を使用している場合にpdloadを終了させるときは,必ずpdcancelコマンドを使用してください。

(3) LOB列構成基表及びLOB列のRDエリアとバッファなどの資源について

LOB列がある表にデータロードする場合,LOB列構成基表,及びLOB列のRDエリアとバッファなどの資源は,すべて準備しておく必要があります。LOB列構成基表だけを作成する場合も同様です。

(4) ユティリティ実行時に使用できるファイルの媒体について

pdload実行時に使用できるファイルの媒体を次に示します。

ファイル

ファイル

固定長ブロックテープ

可変長ブロックテープ

入力データファイル

※1※2

※2

制御情報ファイル

×

×

列構成情報ファイル

×

×

ナル値・関数情報ファイル

×

×

エラー情報ファイル

×

×

エラーデータファイル

×

×

LOB入力ファイル

×

LOB中間ファイル

×

×

インデクス情報ファイル

×

×

ソート用ワークファイル

×

×

処理結果ファイル

×

×

(凡例)

○:使用できます。

×:使用できません。

注※1

バイナリ形式,及び固定長データ形式の場合は,使用できません。

注※2

pdrorg用アンロードファイルの場合は,使用できません。

(5) データ連動の対象となる抽出側データべースへのユティリティ実行について

データ連動の対象となる抽出側データべースに対してpdloadを実行する場合,次の点に注意してください。

(6) 行の最後がコンマ(,)で終わっているDAT形式の入力データファイルをデータロードする場合について

行の最後がコンマ(,)で終わっているDAT形式の入力データファイルをデータロードする場合に,「列数が不一致」などの理由でデータロードできないときがあります。このような場合は,列構成情報ファイルに表の列名をすべて記述して,最後にスキップデータ文を記述します。この場合,入力データの修正は不要です。

なお,表の列数が多く列構成情報ファイルの記述が大変なときは,次の方法で作成できます。

  1. SQL Executerを使用して表の列名をファイルに出力します。

    該当する表の列名をファイルに出力する場合,列定義順に出力する必要があるため,SQL文の記述は次のようにしてください。

    PUTFILE TO ファイル名 SELECT COLUMN_NAME FROM MASTER.SQL_COLUMNS

    WHERE TABLE_NAME='表名' ORDER BY COLUMN_ID;

  2. 1.で編集した結果を出力したファイル名の最後の行に,スキップデータ文を追記します。

(7) プラグインインデクスが定義してある表へのデータロードについて

(8) HiRDB Text Search Plug-inの差分インデクス機能を使用している場合について

HiRDB Text Search Plug-inの差分インデクス機能を使用している場合,クライアント環境定義PDPLUGINNSUBの指定によって,pdloadが更新するインデクスを次に示します。

既存データの有無

PDPLUGINNSUBの指定

Y

N

設定なし

既存データなし(作成モードのデータロード)

既存データあり(追加モードのデータロード)

(凡例)

M:MASTERインデクスを更新

S:差分インデクスを更新

(9) ユニークキーインデクス又は主キーインデクスを定義した表へのデータロードについて

ユニークキーインデクス又は主キーインデクスを定義した表にデータロードをする場合は,次に示す注意が必要です。

(10) データロード対象の表を基にリストを作成している場合について

データロード対象の表を基にリストを作成している場合,データロード後にリストを使用して検索したときには,次のような現象が発生します。

このような場合,リストを使用して検索する前に,リストを再作成する必要があります。

(11) コマンド実行画面に出力されるメッセージ

pdloadは,標準出力に経過メッセージを出力しながら処理をします。また,エラー発生時は,標準エラー出力にエラーメッセージを出力します。標準出力や標準エラー出力への出力が抑止されている環境でpdloadを実行した場合,メッセージ出力待ちでpdloadが無応答状態となったり,メッセージログファイルにKFPL20003-Eメッセージを出力してpdloadが異常終了したりすることがあります。そのため,標準出力や標準エラー出力への出力ができない環境ではpdloadを実行しないでください。なお,標準出力,及び標準エラー出力に出力するメッセージの順序や数は,メッセージログファイルやイベントログと一致しないことがあります。正確にメッセージを把握したい場合は,メッセージログファイル又はイベントログを参照してください。

(12) 共用表へのデータロード

共用表にデータロードする場合,共用表,及び処理対象の表に定義した共用インデクスを格納しているRDエリアに対して,EXモードで排他を掛けます。そのため,該当するRDエリアに定義したほかの表やインデクスも参照,及び更新ができません。共用表に対してデータロードする場合の排他制御モードについては,「ユティリティの排他制御モード」を参照してください。

(13) 参照制約又は検査制約を定義した表へのデータロード

参照制約又は検査制約を定義した表に対してデータロードする場合,pdloadはデータの整合性が保たれているかどうかのチェックをしません。そのため,データロードする場合は,pdconstckを使用して整合性を確認する必要があります。表の整合性確認手順については,マニュアル「HiRDB Version 9 システム導入・設計ガイド」を参照してください。

(14) うるう秒を含んだ時刻データ又は時刻印データのデータロード

うるう秒を含んだ時刻データ又は時刻印データをデータロードする場合,pd_leap_secondオペランドをYにしてください。このオペランドをYにすることによって,時刻データ,又は時刻印データの秒で指定できる範囲が0〜61秒になります。

(15) 再編成時期予測機能との関係

作成モード(-d指定)のデータロードをすると,再編成時期予測機能の結果に表やインデクスのデータを削除した運用履歴が反映されます。

また,pdloadが異常終了した状態のまま,pddbstの状態解析結果蓄積機能を実行すると,データロード完了後の状態で再編成時期を予測できないため,予測結果が不正となります。したがって,pdloadが異常終了した場合は,pdloadを再実行して正常終了させた状態で,pddbstの状態解析結果蓄積機能を実行してください。

注※

例えば,データロード中に異常終了してロールバックした状態のDBの情報を蓄積すると,空のDBを基に予測してしまいます。

(16) 分割キー構成列に対して順序数生成子を指定したRDエリア単位データロード

分割キー構成列に対して順序数生成子を指定したRDエリア単位でのデータロードはできません。実行した場合は処理を続行します。その結果,入力データファイルのデータがデータベースに格納できない場合があります。