創成済みの表に対しデータの追加を行う場合、目的に応じたアプリケーションを作成しなくても、rdbsaloaderコマンドにより、外部ファイルからDSIに対してデータを追加することができます。
rdbsaloaderコマンドに指定できるDSIは、SEQUENTIAL構造のみです。
外部ファイルの形式の詳細は、“4.1.1 外部ファイルの形式”を参照してください。
注意
rdbsaloaderコマンドは、DSO定義でORDER(1)が指定されたSEQUENTIAL構造の場合でも、新規ページのみを使用します。そのため、削除を繰り返し行っている場合や大量件数のデータを削除した場合には、rdbsaloaderコマンドの実行前に容量監視を行い、必要に応じてデータベースの再配置を行ってください。
rdbsaloaderコマンドを実行する前に、rdbunlコマンドによりDSIの退避データを取得してください。コマンドが異常終了した場合の退避データとなります。詳細は“rdbsaloaderコマンドの異常時の対処”を参照してください。
アーカイブログ運用を行っている場合、rdbsaloaderコマンド実行中にシステムロググループまたはユーザロググループのアーカイブログファイルが満杯になると、rdbsaloaderコマンドはアーカイブログが満杯の状態が解除されるまで処理待ちとなるため注意が必要です。処理待ちとなった場合、アーカイブログファイルをバックアップすることにより処理待ち状態を解除できます。
rdbsaloaderコマンド実行前にアーカイブログファイルの使用状況を把握し、必要に応じて強制切替えや、破棄またはバックアップのタイミングを調整してください。アーカイブログファイルの詳細については、“4.4 異常時に備えたデータのバックアップ”を参照してください。
ポイント
rdbsaloaderコマンドは、分割格納が定義された表のDSIを処理するとき、入力ファイル内に分割値範囲外のデータが含まれている場合、該当データを処理対象とせずに処理を続行し、正常終了します。分割範囲外のデータをエラーとし、入力ファイルの作成ミスや指定ミスによるデータ抜けを検出するためには、Eオプションを使用します。
参照
各コマンドの指定方法の詳細については、“コマンドリファレンス”を参照してください。
外部ファイルのデータを追加します。表の一意性制約に違反するデータを追加しようとした場合は異常終了となります。
$ rdbsaloader -ma -i 在庫管理DB.在庫表DSI -s /home/rdb1/work /home/rdb1/saloader.data
rdbsaloaderコマンドの実行が異常終了した場合は、指定された表のDSIと、関連するインデックスのDSIを、アクセス禁止にします。この場合は、出力されるメッセージにより異常原因を取り除いた後、rdbinfコマンドでアクセス禁止の原因を調べ、以下の対処を行ってください。
運用情報の設定原因 | 対処 |
---|---|
ALD : 追記処理の異常 | rdbsaloaderコマンドを再実行 |
TIH : ロールバックの異常 |
|