オブジェクト・リストのコピー

COPY ユーティリティーを使用すると、1 つの COPY 制御ステートメント内で、オブジェクトのリストを処理することができます。 そのリストには、オブジェクトとして、表スペース、表スペース・パーティション、非パーティション化表スペースのデータ・セット、索引スペース、索引スペース・パーティションをどれでも入れることができます。

リスト形式でオブジェクトを指定する方法は、参照に関連する表スペースの完全セット を QUIESCE の実行前にコピーする場合に便利です。 オブジェクトのリストについてイメージ・コピーをとる際には、以下の情報を考慮に入れてください。

  • Db2 PARALLELキーワードを指定して並列処理を呼び出さない限り、リスト内のテーブルスペースとインデックススペースを1つずつ、指定された順序でコピーします。
  • CHANGELIMIT が指定されたリスト中の各表スペースごとに REPORT フェーズがあるため、 リストの処理中に、REPORT フェーズと COPY フェーズが 切り替わります。
  • 処理が正常に完了すると、表スペースの COPY ペンディング状況または通知 COPY ペンディング状況、 および索引の通知 COPY ペンディング状況は、すべてリセットされます。
  • SHRLEVEL(REFERENCE) オプションを用いて COPY を使用する場合は、以下のとおりです。
    • DB2 は、UTILINIT フェーズにある各表スペースおよび索引の書き込みクレーム・クラスをドレーンします。 これはユーティリティー処理の間、維持されます。
    • すべてのオブジェクトをコピーした後、リスト上のすべてのオブジェクトに対して、 一度に SYSCOPY 行を挿入するユーティリティー処理が行われます。
    • リスト上のすべてのオブジェクトは、SYSCOPY 行の START_RBA 列に 同一の RBA または LRSN 値を持っています。すなわち、COPY フェーズの終わりに、START_RBA 列は 現行 LRSN の値に設定されます。
  • 変更の開始SHRLEVEL(CHANGE) オプションを用いて COPY を使用する場合は、以下のとおりです。
    • OPTIONS EVENT(ITEMERROR,SKIP) を指定した場合:
      • リスト内の各オブジェクトが UTRW 状況になり、読み取りクレーム・クラスは、オブジェクトがコピーされている間のみ保持されます。
      • オブジェクトは、 Db2 前回のコピー以降に更新されたページがない場合、またはCHANGELIMITコピーリクエストの基準を満たさない場合、増分コピーは実行されません。
    • OPTIONS EVENT(ITEMERROR,SKIP) を指定しない場合は、リスト中のすべてのオブジェクトが UTRW 状況になり、すべてのオブジェクトについて読み取りクレーム・クラスは COPY の全期間にわたって維持されます。
    • 各オブジェクトのコピーが完了すると、リスト中のオブジェクトに SYSCOPY 行 を挿入するユーティリティー処理が行われます。
    • リスト中のオブジェクトは、SYSCOPY 行の START_RBA 列に対して異なる LRSN 値を 持っています。 すなわち、そのオブジェクトのコピー処理の開始時に、START_RBA 列の値には現行の RBA または LRSN の値が 設定されます。
    変更の終わり

PARALLELキーワードを指定すると、 Db2 ディスクやテープデバイス上のイメージコピーの並列処理をサポートします。 PARALLEL キーワードと共に TAPEUNITS を使用することによって、コピー機能のために割り振られる磁気テープ装置数を制御できます。 JCL ステートメントを使用して磁気テープ装置を定義する場合は、JCL が 装置の割り振りを制御します。

PARALLEL キーワードと共にオブジェクトを明示的に指定した場合、それらのオブジェクトは必ずしも指定された順序では処理されません。 テープに書き込まれるオブジェクトで、そのファイル・シーケンス番号が JCL で指定 されている場合は、指定された順序で処理されます。 テンプレートを使用している場合は、ファイル・シーケンス番号は指定できま せん。 JCL 指定のオーバーライドがない場合、DB2 が 配置を決定し、従って、そのようなオブジェクトの処理の順序も決定します。 テンプレートのみを使用する場合は、オブジェクトはそのサイズに従って処理され、最も大きな オブジェクトが最初に処理されます。

PARALLEL キーワードおよび TAPEUNITS キーワードは両方 とも、COPY ユーティリティーが処理する際の制約としての役割を果たします。 PARALLEL キーワード は、同時に処理できるオブジェクトの最大数を制限することによって、並列処理の量に制約を加えて います。 TAPEUNITS キーワードは、COPY コマンド用に動的に割り振ることのできる磁気テープ装置数に 制約を加えます。 あるオブジェクトが多くのテープを要求したために残りのテープ数では別のオブジェクトを 十分にサービスできないような場合は、TAPEUNITS キーワードが並列処理の量に制約を加えることができます。

PARALLEL キーワードを指定した場合に必要となる スレッドの総数を計算するには、式 (n *2+1) を使用します。 ここで、n は並列に処理するオブジェクト数です (リストに 含まれているオブジェクトの総数は関係ありません)。 PARALLEL キーワードを使用しない場合は 、n が 1 となり、COPY は単一オブジェクトの COPY ジョブに対して 3 つのスレッドを使用します。

COPY SCOPE PENDING は、COPY ペンディング状況または通知 COPY ペンディング状況の オブジェクトのみをコピーすることを指示します。 パーティション化されたオブジェクトに対して DSNUM ALL オプションが 指定されていて、1 つ以上のパーティションが COPY ペンディング状況または 通知 COPY ペンディング状況の場合、表スペースまたは索引スペースの 全体のコピーが作成されます。

パーティション化された オブジェクトの場合、COPY ペンディング状況または通知 COPY ペンディング状況のパーティションのみが コピーされるようにするには、パーティションのリストを 指定する必要があります。 これを行う推奨方法は、PARTLEVEL オプションを指定してビルドされた LISTDEF リストに 対して COPY を起動する方法です。 COPY ペンディング状況または通知 COPY ペンディング状況の 各パーティションごとに、1 つの出力イメージ・コピー・データ・セットが作成されます。

TEMPLATE ステートメントの LIMIT オプションを 使用して、出力コピー・データ・セット用のテンプレートを切り替えることができます。 テンプレートの切り替えが よく使用されるのは、小さなデータ・セットを DASD に、大きなデータ・セットを TAPE に送る場合です。 これによって、 UNIT、DSN、または HSM の各クラスで異なるテンプレートに切り替えることができます。

次の表スペースは、表スペースのリストに含めることができません。 それぞれ 1 つずつを単一オブジェクトとして指定する必要があります。

  • DSNDB01.SYSUTILX
  • DSNDB06.SYSTSCPY
  • DSNDB01.SYSLGRNX

この制約事項の唯一の例外は、COPY YES 属性で定義された、上記の表スペースに対する索引です。 そのような索引は、 適切な表スペースと一緒に指定することができます。