ヘッダーをスキップ
Oracle Streamsレプリケーション管理者ガイド
11g リリース1(11.1)
E05776-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

8 Oracle Streamsレプリケーション環境への追加

この章では、既存のOracle Streamsレプリケーション環境にデータベース・オブジェクトおよびデータベースを追加する方法について説明します。

この章の内容は次のとおりです。


注意:

  • ここで説明する手順は、DBMS_STREAMS_ADMパッケージを使用してOracle Streams環境を構成する場合を想定しています。他のパッケージを使用する場合は、タスクごとに追加の手順が必要になることがあります。

  • 特定のタイプのデータベース・オブジェクトは、Oracle Streamsではサポートされません。Oracle Streams環境を拡張する場合、取得プロセスが、サポートされていないデータベース・オブジェクトに対する変更の取得を試行しないことを確認します。また、同期取得または適用プロセスが、サポートされていない列に対する変更の処理を試行しないことも確認します。サポートされていないデータベース・オブジェクトおよび列を表示するには、DBA_STREAMS_UNSUPPORTEDおよびDBA_STREAMS_COLUMNSデータ・ディクショナリ・ビューを問い合せます。

  • 「DBMS_STREAMS_ADMパッケージを使用したレプリケーションの構成」で説明したプロシージャを使用してレプリケーション環境を構成した場合、それらのプロシージャのいずれかを使用して環境を拡張できることがあります。例については、『Oracle Database 2日でデータ・レプリケーションおよび統合ガイド』を参照してください。



参照:


既存の単一ソース環境への共有オブジェクトの追加

既存の単一ソース環境に既存のデータベース・オブジェクトを追加するには、適切な取得プロセス、同期取得、伝播および適用プロセスに必要なルールを追加します。稼働中のOracle Streams環境で取得ルールまたは伝播ルールを作成または変更する前に、新規のルールまたは変更後のルールの結果としてLCRを受信する伝播や適用プロセスが、これらのLCRを処理するように構成されていることを確認してください。つまり、伝播または適用プロセスが存在し、それぞれがLCRを適切に処理するルール・セットに関連付けられている必要があります。これらの伝播と適用プロセスがこれらのLCRを処理するように適切に構成されていないと、LCRが失われる可能性があります。

たとえば、すでに変更が取得、伝播されて他の表に適用されているOracle Streams環境に、表を追加する必要がある場合を考えます。この表に対する変更を取得する取得プロセスまたは同期取得は1つのみで、この表に変更を適用する適用プロセスも1つのみであるとします。この場合は、次のルール・セットに表の1つ以上のルールを追加する必要があります。

管理手順を正しい順序で実行しないと、LCRが失われる可能性があります。たとえば、取得プロセスを停止せず、先に取得プロセスのルール・セットにルールを追加した場合、変更を伝播するように指示するルールがなければ伝播は変更を伝播せず、変更が失われる可能性があります。

この例では、共有データベース・オブジェクトが接続先データベースで読取り専用であることを想定しています。共有オブジェクトが接続先データベースで読取り/書込み可能である場合、接続先データベースの共有オブジェクトに対して行われた変更をレプリケートするようにOracle Streamsが構成されないため、レプリケーション環境では同期状態が保たれません。

図8-1に、共有データベース・オブジェクトを単一ソースOracle Streams環境に追加するために実行する必要がある追加の構成手順を示します。

図8-1 単一ソース環境への共有オブジェクトの追加例

図8-1の説明が続きます。
図8-1「単一ソース環境への共有オブジェクトの追加例」の説明

LCRの消失を回避するために、構成手順を次の順序で完了する必要があります。

  1. 共有オブジェクトを追加する各ソース・データベースで、追加する共有オブジェクトのサプリメンタル・ロギングを指定します。手順については、「Oracle Streamsレプリケーション環境内のサプリメンタル・ロギングの管理」を参照してください。

  2. 取得プロセス、1つの伝播または適用プロセスを停止します。

    • 取得プロセスを停止するには、DBMS_CAPTURE_ADMパッケージのSTOP_CAPTUREプロシージャを使用します。

    • 伝播を停止するには、DBMS_PROPAGATION_ADMパッケージのSTOP_PROPAGATIONプロシージャを使用します。

    • 適用プロセスを停止するには、DBMS_APPLY_ADMパッケージのSTOP_APPLYプロシージャを使用します。

    通常は、操作中にメッセージがキューに蓄積されないように、取得プロセスを停止することをお薦めします。


    注意:

    同期取得は停止できません。


    参照:

    これらのタスクを実行する方法の詳細は、『Oracle Streams概要および管理』を参照してください。

  3. 適用プロセスのルール・セットに、関連ルールを追加します。適用プロセスのルール・セットにルールを追加するには、次のいずれかの手順を実行します。

    • DBMS_STREAMS_ADM.ADD_TABLE_RULES

    • DBMS_STREAMS_ADM.ADD_SUBSET_RULES

    • DBMS_STREAMS_ADM.ADD_SCHEMA_RULES

    • DBMS_STREAMS_ADM.ADD_GLOBAL_RULES

    ADD_SUBSET_RULESプロシージャ以外のこれらのプロシージャでは、適用プロセスのポジティブ・ルール・セットまたはネガティブ・ルール・セットにルールを追加できます。ADD_SUBSET_RULESプロシージャでは、適用プロセスのポジティブ・ルール・セットにのみルールを追加できます。

  4. 伝播のルール・セットに、関連ルールを追加します。伝播のルール・セットにルールを追加するには、次のいずれかのプロシージャを実行します。

    • DBMS_STREAMS_ADM.ADD_TABLE_PROPAGATION_RULES

    • DBMS_STREAMS_ADM.ADD_SUBSET_PROPAGATION_RULES

    • DBMS_STREAMS_ADM.ADD_SCHEMA_PROPAGATION_RULES

    • DBMS_STREAMS_ADM.ADD_GLOBAL_PROPAGATION_RULES

    ADD_SUBSET_PROPAGATION_RULESプロシージャ以外のこれらのプロシージャでは、伝播のポジティブ・ルール・セットまたはネガティブ・ルール・セットにルールを追加できます。ADD_SUBSET_PROPAGATION_RULESプロシージャでは、伝播のポジティブ・ルール・セットにのみルールを追加できます。

  5. 取得プロセスまたは同期取得で使用するルール・セットに関連ルールを追加します。既存の取得プロセスのルール・セットにルールを追加するには、次のいずれかのプロシージャを使用して既存の取得プロセスを指定できます。

    • DBMS_STREAMS_ADM.ADD_TABLE_RULES

    • DBMS_STREAMS_ADM.ADD_SUBSET_RULES

    • DBMS_STREAMS_ADM.ADD_SCHEMA_RULES

    • DBMS_STREAMS_ADM.ADD_GLOBAL_RULES

    ADD_SUBSET_RULESプロシージャ以外のこれらのプロシージャでは、取得プロセスのポジティブ・ルール・セットまたはネガティブ・ルール・セットにルールを追加できます。ADD_SUBSET_RULESプロシージャでは、取得プロセスのポジティブ・ルール・セットにのみルールを追加できます。

    既存の同期取得のルール・セットにルールを追加するには、次のいずれかのプロシージャを使用して既存の同期取得を指定できます。

    • DBMS_STREAMS_ADM.ADD_TABLE_RULES

    • DBMS_STREAMS_ADM.ADD_SUBSET_RULES

    DBMS_STREAMS_ADMパッケージのプロシージャを使用して取得プロセスのルールを追加すると、その取得プロセスがソース・データベースへのデータベース・リンクを持つローカル取得プロセスまたはダウンストリーム取得プロセスである場合は、指定した表、指定したスキーマまたはデータベース全体に対して、それぞれDBMS_CAPTURE_ADMパッケージのPREPARE_TABLE_INSTANTIATIONPREPARE_SCHEMA_INSTANTIATIONまたはPREPARE_GLOBAL_INSTANTIATIONプロシージャが自動的に実行されます。

    次のいずれかの条件に該当する場合は、適切なプロシージャを実行してインスタンス化の準備を手動で行う必要があります。

    • DBMS_RULE_ADMを使用して、取得プロセスのルール・セット内でルールを作成または変更する場合。

    • 取得プロセスは追加されるオブジェクトに対する変更をすでに取得しているため、取得プロセスのルール・セットにはこれらのオブジェクトのルールを追加しない場合。この場合、オブジェクトのルールを環境内の伝播と適用プロセスには追加できますが、取得プロセスには追加できません。

    • ソース・データベースへのデータベース・リンクを持たないダウンストリーム取得プロセスを使用する場合。

    インスタンス化の準備を手動で行う必要がある場合の手順については、「ソース・データベースでインスタンス化を行うためのデータベース・オブジェクトの準備」を参照してください。

    DBMS_STREAMS_ADMパッケージのプロシージャを使用して同期取得のルールを追加すると、指定した表に対してDBMS_CAPTURE_ADMパッケージのPREPARE_SYNC_INSTANTIATIONファンクションが自動的に実行されます。

  6. 各接続先データベースで、Oracle Streams環境に追加する各データベース・オブジェクトをインスタンス化するか、そのインスタンス化SCNを設定します。接続先データベースにデータベース・オブジェクトが存在しない場合は、エクスポート/インポート、トランスポータブル表領域またはRecovery Managerを使用してインスタンス化します。接続先データベースにデータベース・オブジェクトが存在する場合は、そのインスタンス化SCNを手動で設定します。

    • エクスポート/インポートを使用してデータベース・オブジェクトをインスタンス化するには、まずソース・データベースでそれらのデータベース・オブジェクトをエクスポートします。次に、接続先データベースでそれらのオブジェクトをインポートします。詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。エクスポート/インポート、トランスポータブル表領域またはRecovery Managerを使用してオブジェクトをインスタンス化する方法の詳細は、「Oracle Streamsレプリケーション環境でのオブジェクトのインスタンス化」を参照してください。

      ソース・データベースでのデータベース・オブジェクトのエクスポート中、それらのデータベース・オブジェクトに対する変更は許可しないでください。接続先データベースでのデータベース・オブジェクトのインポート中、それらのデータベース・オブジェクトに対する変更は許可しないでください。

      FLASHBACK_SCNFLASHBACK_TIMEなどのエクスポート・パラメータを使用して、より厳密な一貫性レベルを指定できます。

    • 表、スキーマまたはデータベースのインスタンス化SCNを手動で設定するには、接続先データベースでDBMS_APPLY_ADMパッケージの適切なプロシージャを1つ以上実行します。

      • SET_TABLE_INSTANTIATION_SCN

      • SET_SCHEMA_INSTANTIATION_SCN

      • SET_GLOBAL_INSTANTIATION_SCN

      これらのプロシージャのいずれかを接続先データベースで実行する場合は、接続先データベースに追加された各オブジェクトに、インスタンス化SCNの時点でソース・データベースとの一貫性があることを確認する必要があります。

      接続先データベースでSET_GLOBAL_INSTANTIATION_SCNを実行する場合、接続先データベースの各スキーマおよびそれらのスキーマが所有する表にもインスタンス化SCNが設定されるように、このプロシージャのrecursiveパラメータをTRUEに設定します。

      接続先データベースでSET_SCHEMA_INSTANTIATION_SCNを実行する場合、スキーマ内の各表にもインスタンス化SCNが設定されるように、このプロシージャのrecursiveパラメータをTRUEに設定します。

      SET_GLOBAL_INSTANTIATION_SCNプロシージャまたはSET_SCHEMA_INSTANTIATION_SCNプロシージャでrecursiveパラメータをTRUEに設定する場合は、接続先データベースからソース・データベースへのデータベース・リンクが必要です。このデータベース・リンクはソース・データベースのグローバル名と同じ名前であり、プロシージャを実行するユーザーからアクセス可能である必要があります。手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

      または、メタデータのエクスポート/インポートを実行して、既存のデータベース・オブジェクトについてインスタンス化SCNを設定できます。このオプションを選択した場合は、行がインポートされないことを確認してください。また、インポートする接続先データベースに追加された各オブジェクトに、エクスポートを実行したソース・データベースとのエクスポート時点での一貫性があることを確認してください。DML変更のみを共有する場合は、表レベルのエクスポート/インポートで十分です。DDL変更も共有する場合は、追加の考慮事項があります。メタデータのエクスポート/インポートを実行する方法の詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。

  7. 手順2で停止したOracle Streamsクライアントを起動します。

    • 取得プロセスを起動するには、DBMS_CAPTURE_ADMパッケージのSTART_CAPTUREプロシージャを使用します。

    • 伝播を起動するには、DBMS_PROPAGATION_ADMパッケージのSTART_PROPAGATIONプロシージャを使用します。

    • 適用プロセスを起動するには、DBMS_APPLY_ADMパッケージのSTART_APPLYプロシージャを使用します。


    参照:

    これらのタスクを実行する方法の詳細は、『Oracle Streams概要および管理』を参照してください。

追加したルールによって生じる最初のLCRが適用プロセスに到達する前に、表またはスキーマがインスタンス化されるように、手順2で取得プロセスを停止するか、伝播ジョブの1つを無効化するか、適用プロセスを停止する必要があります。この操作を実行しないと、適用プロセスのルールを追加したかどうかに応じてLCRが失われたり、適用エラーが発生する可能性があります。

追加した表がこの手順の実行中にソース・データベースで変更されないことと、表のLCRがストリーム内にないことまたは取得を待機していないことが確実な場合は、手順6の前に手順7を実行して、Oracle Streamsプロセスや伝播ジョブの停止期間を短縮できます。


参照:

既存の単一ソース環境にオブジェクトを追加する場合の詳細な例は、「既存のOracle Streamsレプリケーション環境へのオブジェクトの追加」を参照してください。

単一ソース環境への新規接続先データベースの追加

既存の単一ソース環境に接続先データベースを追加するには、新規の接続先データベースで1つ以上の新規適用プロセスを作成し、必要な場合は、そのデータベースに変更を伝播する1つ以上の伝播を構成します。また、新規接続先データベースに伝播するストリーム内の既存の伝播に、ルールの追加が必要になる場合があります。

「既存の単一ソース環境への共有オブジェクトの追加」で説明した例と同様に、稼働中のOracle Streams環境で伝播ルールを作成または変更する前に、新規のルールまたは変更後のルールの結果としてLCRを受信する伝播や適用プロセスが、これらのLCRを処理するように構成されていることを確認してください。このように構成されていないと、LCRが失われる可能性があります。

この例では、共有データベース・オブジェクトが接続先データベースで読取り専用であることを想定しています。共有オブジェクトが接続先データベースで読取り/書込み可能である場合、接続先データベースの共有オブジェクトに対して行われた変更をレプリケートするようにOracle Streamsが構成されないため、レプリケーション環境では同期状態が保たれません。

図8-2に、接続先データベースを単一ソースOracle Streams環境に追加するために実行する必要がある追加の構成手順を示します。

図8-2 単一ソース環境への接続先の追加例

図8-2の説明が続きます。
図8-2「単一ソース環境への接続先の追加例」の説明

LCRの消失を回避するために、構成手順を次の順序で完了する必要があります。

  1. 次に示す必要なタスクを完了し、Oracle Streams用の環境内で各データベースを準備します。

    • Oracle Streams管理者の構成

    • Oracle Streamsに関連する初期化パラメータの設定

    • ネットワーク接続性とデータベース・リンクの構成

    これらのタスクの一部は、一部のデータベースでは不要な場合があります。


    参照:

    Oracle Streams用のデータベースを準備する方法の詳細は、『Oracle Streams概要および管理』を参照してください。

  2. 必要なANYDATAキューを作成します(接続先データベースに存在しない場合)。適用プロセスを作成するときに、その適用プロセスを特定のANYDATAキューに関連付けます。手順については、「LCRをステージングするANYDATAキューの作成」を参照してください。

  3. 新規の接続先データベースで、ソース・データベースからの変更を適用できるように1つ以上の適用プロセスを作成します。各適用プロセスで、変更の適用に適切なルール・セットが使用されることを確認します。新規データベースでは適用プロセスを起動しないでください。手順については、「取得LCRを適用する適用プロセスの作成」を参照してください。

    適用プロセスを停止したままにすると、ソース・データベースで行われた変更は新規データベースのインスタンス化が完了するまで適用されません。それ以外の場合は、データが不正になったりエラーが発生します。

  4. 必要な伝播を、ソース・データベースからの変更を新規の接続先データベースに伝播するように構成します。各伝播で変更の伝播に適切なルール・セットが使用されることを確認します。「LCRを伝播させる伝播の作成」を参照してください。

  5. ソース・データベースで、新規の接続先データベースの適用プロセスによって変更が適用される各データベース・オブジェクトについて、インスタンス化の準備を行います。

    1つ以上の取得プロセスを使用している場合は、指定した表、指定したスキーマまたはデータベース全体に対して、それぞれDBMS_CAPTURE_ADMパッケージのPREPARE_TABLE_INSTANTIATIONPREPARE_SCHEMA_INSTANTIATIONまたはPREPARE_GLOBAL_INSTANTIATIONプロシージャを実行します。

    1つ以上の同期取得を使用している場合は、指定した表に対してDBMS_CAPTURE_ADMパッケージのPREPARE_SYNC_INSTANTIATIONファンクションを実行します。

    手順については、「ソース・データベースでインスタンス化を行うためのデータベース・オブジェクトの準備」を参照してください。

  6. 新規の接続先データベースで、適用プロセスによって変更が適用される各データベース・オブジェクトをインスタンス化するか、そのインスタンス化SCNを設定します。新規の接続先データベースにデータベース・オブジェクトが存在しない場合は、エクスポート/インポート、トランスポータブル表領域またはRecovery Managerを使用してインスタンス化します。新規の接続先データベースにデータベース・オブジェクトが存在する場合は、そのインスタンス化SCNを設定します。

    • エクスポート/インポートを使用してデータベース・オブジェクトをインスタンス化するには、まずソース・データベースでそれらのデータベース・オブジェクトをエクスポートします。次に、接続先データベースでそれらのオブジェクトをインポートします。詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。エクスポート/インポート、トランスポータブル表領域またはRecovery Managerを使用してオブジェクトをインスタンス化する方法の詳細は、「Oracle Streamsレプリケーション環境でのオブジェクトのインスタンス化」を参照してください。

      ソース・データベースでのデータベース・オブジェクトのエクスポート中、それらのデータベース・オブジェクトに対する変更は許可しないでください。接続先データベースでのデータベース・オブジェクトのインポート中、それらのデータベース・オブジェクトに対する変更は許可しないでください。

      FLASHBACK_SCNFLASHBACK_TIMEなどのエクスポート・パラメータを使用して、より厳密な一貫性レベルを指定できます。

    • 表、スキーマまたはデータベースのインスタンス化SCNを手動で設定するには、新規の接続先データベースでDBMS_APPLY_ADMパッケージの適切なプロシージャを1つ以上実行します。

      • SET_TABLE_INSTANTIATION_SCN

      • SET_SCHEMA_INSTANTIATION_SCN

      • SET_GLOBAL_INSTANTIATION_SCN

      これらのプロシージャのいずれかを実行する場合は、新規の接続先データベースの共有オブジェクトに、インスタンス化SCNの時点でソース・データベースとの一貫性があることを確認する必要があります。

      接続先データベースでSET_GLOBAL_INSTANTIATION_SCNを実行する場合、接続先データベースの各スキーマおよびそれらのスキーマが所有する表にもインスタンス化SCNが設定されるように、このプロシージャのrecursiveパラメータをTRUEに設定します。

      接続先データベースでSET_SCHEMA_INSTANTIATION_SCNを実行する場合、スキーマ内の各表にもインスタンス化SCNが設定されるように、このプロシージャのrecursiveパラメータをTRUEに設定します。

      SET_GLOBAL_INSTANTIATION_SCNプロシージャまたはSET_SCHEMA_INSTANTIATION_SCNプロシージャでrecursiveパラメータをTRUEに設定する場合は、接続先データベースからソース・データベースへのデータベース・リンクが必要です。このデータベース・リンクはソース・データベースのグローバル名と同じ名前であり、プロシージャを実行するユーザーからアクセス可能である必要があります。手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

      または、メタデータのエクスポート/インポートを実行して、既存のデータベース・オブジェクトについてインスタンス化SCNを設定できます。このオプションを選択した場合は、行がインポートされないことを確認してください。また、インポートする接続先データベースの共有オブジェクトに、エクスポートを実行したソース・データベースとのエクスポート時点での一貫性があることを確認してください。DML変更のみを共有する場合は、表レベルのエクスポート/インポートで十分です。DDL変更も共有する場合は、追加の考慮事項があります。メタデータのエクスポート/インポートを実行する方法の詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。

  7. DBMS_APPLY_ADMパッケージのSTART_APPLYプロシージャを使用して、手順3で作成した適用プロセスを起動します。


参照:

既存の単一ソース環境にデータベースを追加する場合の詳細な例は、「既存のOracle Streamsレプリケーション環境へのデータベースの追加」を参照してください。

既存の複数ソース環境への共有オブジェクトの追加

既存の複数ソース環境に既存のデータベース・オブジェクトを追加するには、適切な取得プロセス、同期取得、伝播および適用プロセスに必要なルールを追加します。

この例では、次の用語を使用しています。

稼働中のOracle Streams環境で取得ルールまたは伝播ルールを作成または変更する前に、新規のルールまたは変更後のルールの結果としてLCRを受信する伝播や適用プロセスが、これらのLCRを処理するように構成されていることを確認してください。つまり、伝播または適用プロセスが存在し、それぞれがLCRを適切に処理するルール・セットに関連付けられている必要があります。これらの伝播と適用プロセスがこれらのLCRを処理するように適切に構成されていないと、LCRが失われる可能性があります。

たとえば、すでに変更が取得、伝播されて他の表に適用されているOracle Streams環境に、新規の表を追加する必要がある場合を考えます。環境内の複数の取得プロセスまたは同期取得がこの表に対する変更を取得し、複数の適用プロセスがこの表に変更を適用するとします。この場合は、次のルール・セットに表の1つ以上のルールを追加する必要があります。

管理手順を正しい順序で実行しないと、LCRが失われる可能性があります。たとえば、取得プロセスを停止せず、先に取得プロセスのルール・セットにルールを追加した場合、変更を伝播するように指示するルールがなければ伝播は変更を伝播せず、変更が失われる可能性があります。

図8-3に、共有データベース・オブジェクトを複数ソースOracle Streams環境に追加するために実行する必要がある追加の構成手順を示します。

図8-3 複数ソース環境への共有オブジェクトの追加例

図8-3の説明が続きます。
図8-3「複数ソース環境への共有オブジェクトの追加例」の説明

Oracle Streamsレプリケーション環境に複数のソース・データベースが存在する場合、変更の循環が発生する可能性があります。変更の循環は、変更が発生場所であるデータベースに再送されると発生します。通常は、変更の循環を回避する必要があります。レプリケーション環境を構成する前に、第4章「Oracle Streamsタグ」を参照して、変更の循環が回避されるようにレプリケーション環境を構成してください。

LCRの消失を回避するために、構成手順を次の順序で完了する必要があります。

  1. 各実装済データベースで、環境に追加するオブジェクトに必要なサプリメンタル・ロギングを指定します。手順については、「Oracle Streamsレプリケーション環境内のサプリメンタル・ロギングの管理」を参照してください。

  2. 追加したオブジェクトに対する変更を取得する取得プロセスをすべて停止するか、それを伝播する伝播をすべて停止するか、または追加したオブジェクトに変更を適用する適用プロセスをすべて停止します。

    • 取得プロセスを停止するには、DBMS_CAPTURE_ADMパッケージのSTOP_CAPTUREプロシージャを使用します。

    • 伝播を停止するには、DBMS_PROPAGATION_ADMパッケージのSTOP_PROPAGATIONプロシージャを使用します。

    • 適用プロセスを停止するには、DBMS_APPLY_ADMパッケージのSTOP_APPLYプロシージャを使用します。

    通常は、操作中にメッセージがキューに蓄積されないように、取得プロセスを停止することをお薦めします。


    注意:

    同期取得は停止できません。


    参照:

    これらのタスクを実行する方法の詳細は、『Oracle Streams概要および管理』を参照してください。

  3. 追加したオブジェクトに変更を適用する適用プロセスについて、ルール・セットに関連ルールを追加します。適用プロセスのルール・セットにルールを追加するには、次のいずれかの手順を実行します。

    • DBMS_STREAMS_ADM.ADD_TABLE_RULES

    • DBMS_STREAMS_ADM.ADD_SUBSET_RULES

    • DBMS_STREAMS_ADM.ADD_SCHEMA_RULES

    • DBMS_STREAMS_ADM.ADD_GLOBAL_RULES

    ADD_SUBSET_RULESプロシージャ以外のこれらのプロシージャでは、適用プロセスのポジティブ・ルール・セットまたはネガティブ・ルール・セットにルールを追加できます。ADD_SUBSET_RULESプロシージャでは、適用プロセスのポジティブ・ルール・セットにのみルールを追加できます。

  4. 追加したオブジェクトに変更を伝播する伝播について、ルール・セットに関連ルールを追加します。伝播のルール・セットにルールを追加するには、次のいずれかのプロシージャを実行します。

    • DBMS_STREAMS_ADM.ADD_TABLE_PROPAGATION_RULES

    • DBMS_STREAMS_ADM.ADD_SUBSET_PROPAGATION_RULES

    • DBMS_STREAMS_ADM.ADD_SCHEMA_PROPAGATION_RULES

    • DBMS_STREAMS_ADM.ADD_GLOBAL_PROPAGATION_RULES

    ADD_SUBSET_PROPAGATION_RULESプロシージャ以外のこれらのプロシージャでは、伝播のポジティブ・ルール・セットまたはネガティブ・ルール・セットにルールを追加できます。ADD_SUBSET_PROPAGATION_RULESプロシージャでは、伝播のポジティブ・ルール・セットにのみルールを追加できます。

  5. 追加したオブジェクトに対する変更を取得する各取得プロセスまたは同期取得で使用されるルール・セットに、関連ルールを追加します。既存の取得プロセスのルール・セットにルールを追加するには、次のいずれかのプロシージャを使用して既存の取得プロセスを指定できます。

    • DBMS_STREAMS_ADM.ADD_TABLE_RULES

    • DBMS_STREAMS_ADM.ADD_SUBSET_RULES

    • DBMS_STREAMS_ADM.ADD_SCHEMA_RULES

    • DBMS_STREAMS_ADM.ADD_GLOBAL_RULES

    ADD_SUBSET_RULESプロシージャ以外のこれらのプロシージャでは、取得プロセスのポジティブ・ルール・セットまたはネガティブ・ルール・セットにルールを追加できます。ADD_SUBSET_RULESプロシージャでは、取得プロセスのポジティブ・ルール・セットにのみルールを追加できます。

    既存の同期取得のルール・セットにルールを追加するには、次のいずれかのプロシージャを使用して既存の同期取得を指定できます。

    • DBMS_STREAMS_ADM.ADD_TABLE_RULES

    • DBMS_STREAMS_ADM.ADD_SUBSET_RULES

    DBMS_STREAMS_ADMパッケージのプロシージャを使用して取得プロセスのルールを追加すると、その取得プロセスがソース・データベースへのデータベース・リンクを持つローカル取得プロセスまたはダウンストリーム取得プロセスである場合は、指定した表、指定したスキーマまたはデータベース全体に対して、それぞれDBMS_CAPTURE_ADMパッケージのPREPARE_TABLE_INSTANTIATIONPREPARE_SCHEMA_INSTANTIATIONまたはPREPARE_GLOBAL_INSTANTIATIONプロシージャが自動的に実行されます。

    次のいずれかの条件に該当する場合は、適切なプロシージャを実行してインスタンス化の準備を手動で行う必要があります。

    • DBMS_RULE_ADMを使用して、取得プロセスのルール・セット内でルールを作成または変更する場合。

    • 取得プロセスは追加されるオブジェクトに対する変更をすでに取得しているため、取得プロセスのルール・セットにはこれらのオブジェクトのルールを追加しない場合。この場合、オブジェクトのルールを環境内の伝播と適用プロセスには追加できますが、取得プロセスには追加できません。

    • ソース・データベースへのデータベース・リンクを持たないダウンストリーム取得プロセスを使用する場合。

    インスタンス化の準備を手動で行う必要がある場合の手順については、「ソース・データベースでインスタンス化を行うためのデータベース・オブジェクトの準備」を参照してください。

    DBMS_STREAMS_ADMパッケージのプロシージャを使用して同期取得のルールを追加すると、指定した表に対してDBMS_CAPTURE_ADMパッケージのPREPARE_SYNC_INSTANTIATIONファンクションが自動的に実行されます。

前述の手順を完了してから、環境に応じて次の各項の手順を完了します。各項の一方の手順のみを完了すればよい場合と、両方の手順を完了する必要がある場合があります。

共有オブジェクト追加時の実装済データベースの構成

環境に複数の実装済データベースが存在する場合は、「既存の複数ソース環境への共有オブジェクトの追加」の手順を完了してから、各実装済データベースについて次の手順を実行します。

  1. 実装済データベースごとに、環境内の他の各実装済データベースで、追加した各オブジェクトにインスタンス化SCNを設定します。これらのインスタンス化SCNの設定は必須です。また、特定の実装済データベースで行われ、そのデータベースの対応するSCNより後にコミットされる変更のみが、他の実装済データベースで適用されます。

    実装済データベースごとに、追加した各オブジェクトにこれらのインスタンス化SCNを次のいずれかの方法で設定できます。

    1. 実装済データベースで追加したオブジェクトのメタデータのみのエクスポートを実行し、そのメタデータを他のそれぞれの実装済データベースでインポートします。このインポートによって、データベースに必須のインスタンス化SCNが、他のデータベースで設定されます。行がインポートされないことを確認してください。また、他の各実装済データベースの共有オブジェクトに、エクスポートを実行した実装済データベースとのエクスポート時点での一貫性があることを確認してください。

      DML変更のみを共有する場合は、表レベルのエクスポート/インポートで十分です。DDL変更も共有する場合は、追加の考慮事項があります。メタデータのエクスポート/インポートを実行する方法の詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。

    2. 他の各実装済データベースで、追加したオブジェクトについてインスタンス化SCNを手動で設定します。各実装済データベースに追加した各オブジェクトに、そのデータベースで設定したインスタンス化SCNとの一貫性があることを確認してください。手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

既存の環境におけるインポート・データベースへの共有オブジェクトの追加

「既存の複数ソース環境への共有オブジェクトの追加」の手順を完了した後に、インポート・データベースについて次の手順を実行します。

  1. エクスポート・データベースとして使用する実装済データベースを選択します。まだインスタンス化は実行しないでください。

  2. インポート・データベースごとに、インポート・データベースの接続先データベースとなる環境内の他のすべてのデータベースで、追加したオブジェクトにインスタンス化SCNを設定します。この場合、インポート・データベースがこれらの接続先データベースのソース・データベースになります。インスタンス化SCNを設定するデータベースは、実装済データベースの場合もあれば、他のインポート・データベースの場合もあります。

    1. インスタンス化中に、またはその後に共有DDLの変更によって、インポート・データベースで1つ以上のスキーマが作成される場合は、環境内の他のすべてのデータベースで、このインポート・データベースについてDBMS_APPLY_ADMパッケージのSET_GLOBAL_INSTANTIATION_SCNプロシージャを実行します。

    2. インポート・データベースにスキーマが存在し、インスタンス化中に、またはその後に共有DDLの変更によって、そのスキーマに1つ以上の表が作成される場合は、環境内の他の各データベースで、このインポート・データベースのスキーマについてDBMS_APPLY_ADMパッケージのSET_SCHEMA_INSTANTIATION_SCNプロシージャを実行します。この操作は、この種のスキーマごとに行います。

    手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

    これらのプロシージャは、インポート・データベースで表がインスタンス化される前に実行し、これらのインポート・データベースについてはローカルの取得プロセスまたは同期取得がすでに構成されているため、インスタンス化中に作成される表ごとにSET_TABLE_INSTANTIATION_SCNプロシージャを実行する必要はありません。インポート・データベースの接続先データベースとなる環境内の他のすべてのデータベースで、その表ごとにインスタンス化SCNが自動的に設定されます。

  3. 手順1で選択したエクスポート・データベースで、共有オブジェクトのエクスポートを実行します。次に、各インポート・データベースで共有オブジェクトのインポートを実行します。エクスポート/インポートの使用方法は、「Oracle Streamsレプリケーション環境でのオブジェクトのインスタンス化」および『Oracle Databaseユーティリティ』を参照してください。

    ソース・データベースでのデータベース・オブジェクトのエクスポート中、それらのデータベース・オブジェクトに対する変更は許可しないでください。接続先データベースでのデータベース・オブジェクトのインポート中、それらのデータベース・オブジェクトに対する変更は許可しないでください。

    FLASHBACK_SCNFLASHBACK_TIMEなどのエクスポート・パラメータを使用して、より厳密な一貫性レベルを指定できます。

  4. エクスポート・データベース以外の実装済データベースごとに、実装済ソース・データベースの接続先データベースとなる各インポート・データベースで、追加したオブジェクトにインスタンス化SCNを設定します。これらのインスタンス化SCNの設定は必須です。また、実装済データベースで行われ、そのデータベースの対応するSCNより後にコミットされる変更のみが、インポート・データベースで適用されます。

    実装済データベースごとに、追加したオブジェクトにこれらのインスタンス化SCNを次のいずれかの方法で設定できます。

    1. 実装済データベースで追加したオブジェクトのメタデータのみのエクスポートを実行し、そのメタデータを各インポート・データベースでインポートします。各インポートによって、実装済データベースに必須のインスタンス化SCNが、インポート・データベースで設定されます。この場合は、インポート・データベースで追加した各オブジェクトに、エクスポート時点で実装済データベースとの一貫性があることを確認してください。

      DML変更のみを共有する場合は、表レベルのエクスポート/インポートで十分です。DDL変更も共有する場合は、追加の考慮事項があります。メタデータのエクスポート/インポートを実行する方法の詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。

    2. 各インポート・データベースで、追加したオブジェクトについてインスタンス化SCNを手動で設定します。各インポート・データベースで追加した各オブジェクトに、対応するインスタンス化SCNの時点で実装済データベースとの一貫性があることを確認してください。手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

複数ソース環境構成へのオブジェクトの追加の完了

構成を完了する前に、次のタスクを完了する必要があります。

前述の構成手順をすべて完了してから、次の手順を行います。

  1. 競合が発生する可能性がある場合は、各データベースで、追加したデータベース・オブジェクトに対する競合解消を構成します。手順については、「Oracle Streamsの競合検出および解消の管理」を参照してください。

  2. 「既存の複数ソース環境への共有オブジェクトの追加」の手順2で停止した各Oracle Streamsクライアントを起動します。

    • 取得プロセスを起動するには、DBMS_CAPTURE_ADMパッケージのSTART_CAPTUREプロシージャを使用します。

    • 伝播を起動するには、DBMS_PROPAGATION_ADMパッケージのSTART_PROPAGATIONプロシージャを使用します。

    • 適用プロセスを起動するには、DBMS_APPLY_ADMパッケージのSTART_APPLYプロシージャを使用します。


    参照:

    これらのタスクを実行する方法の詳細は、『Oracle Streams概要および管理』を参照してください。

既存の複数ソース環境への新規データベースの追加

図8-4に、ソース・データベースと接続先データベースを複数ソースOracle Streams環境に追加するために実行する必要がある追加の構成手順を示します。

図8-4 複数ソース環境へのデータベースの追加例

図8-4の説明が続きます。
図8-4「複数ソース環境へのデータベースの追加例」の説明

Oracle Streamsレプリケーション環境に複数のソース・データベースが存在する場合、変更の循環が発生する可能性があります。変更の循環は、変更が発生場所であるデータベースに再送されると発生します。通常は、変更の循環を回避する必要があります。レプリケーション環境を構成する前に、第4章「Oracle Streamsタグ」を参照して、変更の循環が回避されるようにレプリケーション環境を構成してください。

次の手順を実行して、既存の複数ソースOracle Streams環境に新規ソース・データベースと接続先データベースを追加します。


注意:

Oracle Streams環境に追加するデータベースでは、そのデータベースでのインスタンス化が完了するまでは、共有されるオブジェクトに対して変更が行われないことを確認してください。

  1. 次に示す必要なタスクを完了し、Oracle Streams用の環境内で各データベースを準備します。

    • Oracle Streams管理者の構成

    • Oracle Streamsに関連する初期化パラメータの設定

    • 取得プロセスを実行するための各データベースの準備

    • ネットワーク接続性とデータベース・リンクの構成

    これらのタスクの一部は、一部のデータベースでは不要な場合があります。


    参照:

    Oracle Streams用のデータベースを準備する方法の詳細は、『Oracle Streams概要および管理』を参照してください。

  2. 必要なANYDATAキューを作成します(存在しない場合)。取得プロセス、同期取得または適用プロセスを作成するときに、そのプロセスを特定のANYDATAキューに関連付けます。伝播を作成するときには、その伝播を特定のソース・キューおよび宛先キューに関連付けます。手順については、「LCRをステージングするANYDATAキューの作成」を参照してください。

  3. 新規データベースで、ソース・データベースからの変更を適用できるように1つ以上の適用プロセスを作成します。各適用プロセスで、変更の適用に適切なルール・セットが使用されることを確認します。新規データベースでは適用プロセスを起動しないでください。手順については、「取得LCRを適用する適用プロセスの作成」を参照してください。

    適用プロセスを停止したままにすると、ソース・データベースで行われた変更は新規データベースのインスタンス化が完了するまで適用されません。それ以外の場合は、データが不正になったりエラーが発生します。

  4. 新規データベースがソース・データベースとなる場合は、新規データベースで行われる変更の接続先データベースとなる全データベースで、新規データベースからの変更を適用する1つ以上の適用プロセスを作成します。各適用プロセスで、変更の適用に適切なルール・セットが使用されることを確認します。これらの新規適用プロセスは起動しないでください。手順については、「取得LCRを適用する適用プロセスの作成」を参照してください。

  5. 新規データベースのソース・データベースとなるデータベースで、変更を新規データベースに送信するように伝播を構成します。各伝播で変更の伝播に適切なルール・セットが使用されることを確認します。「LCRを伝播させる伝播の作成」を参照してください。

  6. 新規データベースがソース・データベースとなる場合は、そこでの変更を各接続先データベースに送信するように、新規データベースで伝播を構成します。各伝播で変更の伝播に適切なルール・セットが使用されることを確認します。「LCRを伝播させる伝播の作成」を参照してください。

  7. 新規データベースがソース・データベースとなり、そこに既存の共有オブジェクトがある場合は、その共有オブジェクトに必要なサプリメンタル・ロギングを指定します。手順については、「Oracle Streamsレプリケーション環境内のサプリメンタル・ロギングの管理」を参照してください。

  8. 新規データベースの各ソース・データベースで、新規データベースの適用プロセスによって変更が適用される各データベース・オブジェクトについて、インスタンス化の準備を行います。

    1つ以上の取得プロセスを使用している場合は、指定した表、指定したスキーマまたはデータベース全体に対して、それぞれDBMS_CAPTURE_ADMパッケージのPREPARE_TABLE_INSTANTIATIONPREPARE_SCHEMA_INSTANTIATIONまたはPREPARE_GLOBAL_INSTANTIATIONプロシージャを実行します。

    1つ以上の同期取得を使用している場合は、指定した表に対してDBMS_CAPTURE_ADMパッケージのPREPARE_TABLE_INSTANTIATIONプロシージャを実行します。

    手順については、「ソース・データベースでインスタンス化を行うためのデータベース・オブジェクトの準備」を参照してください。

  9. 新規データベースがソース・データベースとなる場合は、関連する変更を取得するために1つ以上の取得プロセスまたは同期取得を作成します。手順については、「取得プロセスの作成」を参照してください。取得プロセスを使用する場合、各ソース・データベースには1つのみの取得プロセスを使用することをお薦めします。

    DBMS_STREAMS_ADMパッケージのプロシージャを使用して取得プロセスのルールを追加すると、その取得プロセスがソース・データベースへのデータベース・リンクを持つローカル取得プロセスまたはダウンストリーム取得プロセスである場合は、指定した表、指定したスキーマまたはデータベース全体に対して、それぞれDBMS_CAPTURE_ADMパッケージのPREPARE_TABLE_INSTANTIATIONPREPARE_SCHEMA_INSTANTIATIONまたはPREPARE_GLOBAL_INSTANTIATIONプロシージャが自動的に実行されます。

    次のいずれかの条件に該当する場合は、適切なプロシージャを実行してインスタンス化の準備を手動で行う必要があります。

    • DBMS_RULE_ADMパッケージを使用してルールを追加または変更する場合。

    • 既存の取得プロセスを使用し、共有オブジェクトの取得プロセスのルールは追加しない場合。

    • ソース・データベースへのデータベース・リンクを持たないダウンストリーム取得プロセスを使用する場合。

    インスタンス化の準備を手動で行う必要がある場合の手順については、「ソース・データベースでインスタンス化を行うためのデータベース・オブジェクトの準備」を参照してください。

    DBMS_STREAMS_ADMパッケージのプロシージャを使用して同期取得のルールを追加すると、指定した表に対してDBMS_CAPTURE_ADMパッケージのPREPARE_SYNC_INSTANTIATIONファンクションが自動的に実行されます。

  10. 新規データベースがソース・データベースになる場合、DBMS_CAPTURE_ADMパッケージのSTART_CAPTUREプロシージャを使用して、手順9で作成したすべての取得プロセスを起動します。

前述の手順を完了してから、次の該当する項の手順を完了します。

共有オブジェクトが新規データベースに存在する場合のデータベースの構成

新規データベースと共有するオブジェクトがすでに新規データベースに存在する場合は、「既存の複数ソース環境への新規データベースの追加」の手順を完了してから次の手順を完了します。

  1. 新規データベースのソース・データベースごとに、新規データベースでインスタンス化SCNを設定します。これらのインスタンス化SCNの設定は必須です。また、ソース・データベースで行われ、そのデータベースの対応するSCNより後にコミットされる変更のみが、新規データベースで適用されます。

    新規データベースのソース・データベースごとに、これらのインスタンス化SCNを次のいずれかの方法で設定できます。

    1. ソース・データベースで共有オブジェクトのメタデータのみのエクスポートを実行し、そのメタデータを新規データベースでインポートします。このインポートによって、ソース・データベースに必須のインスタンス化SCNが、新規データベースで設定されます。行がインポートされないことを確認してください。この場合は、新規データベースの共有オブジェクトに、エクスポート時点でソース・データベースとの一貫性があることを確認してください。

      DML変更のみを共有する場合は、表レベルのエクスポート/インポートで十分です。DDL変更も共有する場合は、追加の考慮事項があります。メタデータのエクスポート/インポートを実行する方法の詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。

    2. 新規データベースで、共有オブジェクトについてインスタンス化SCNを手動で設定します。新規データベースの共有オブジェクトに、対応するインスタンス化SCNの時点でソース・データベースとの一貫性があることを確認してください。手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

  2. 新規データベースについて、それぞれの接続先データベースでインスタンス化SCNを設定します。これらのインスタンス化SCNの設定は必須です。また、新規のソース・データベースで行われ、それに対応するSCNより後にコミットされる変更のみが、接続先データベースで適用されます。新規データベースがソース・データベースでない場合は、この手順を実行しないでください。

    新規データベースのインスタンス化SCNを設定するには、次の方法があります。

    1. 新規データベースでメタデータのみのエクスポートを実行し、そのメタデータを各接続先データベースでインポートします。行がインポートされないことを確認してください。このインポートによって、新規データベースに必須のインスタンス化SCNが、各接続先データベースで設定されます。この場合は、各接続先データベースの共有オブジェクトに、エクスポート時点で新規データベースとの一貫性があることを確認してください。

      DML変更のみを共有する場合は、表レベルのエクスポート/インポートで十分です。DDL変更も共有する場合は、追加の考慮事項があります。メタデータのエクスポート/インポートを実行する方法の詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。

    2. 接続先データベースで、共有オブジェクトについてインスタンス化SCNを手動で設定します。各接続先データベースの共有オブジェクトに、対応するインスタンス化SCNの時点で新規データベースとの一貫性があることを確認してください。手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

  3. 競合が発生する可能性がある場合は、新規データベースで競合解消を構成します。手順については、「Oracle Streamsの競合検出および解消の管理」を参照してください。

  4. DBMS_APPLY_ADMパッケージのSTART_APPLYプロシージャを使用して、手順3で新規データベースに作成した適用プロセスを起動します。

  5. 手順4で他の各接続先データベースに作成した適用プロセスを起動します。新規データベースがソース・データベースでない場合は、この手順を実行しないでください。

新規データベースへの共有オブジェクトの追加

新規データベースと共有するオブジェクトが新規データベースに存在しない場合は、「既存の複数ソース環境への新規データベースの追加」の手順を完了してから次の手順を完了します。

  1. 新規データベースが他のデータベースのソース・データベースである場合は、新規ソース・データベースの各接続先データベースで、新規データベースのインスタンス化SCNを設定します。

    1. インスタンス化中に、またはその後に共有DDLの変更によって、新規データベースで1つ以上のスキーマが作成される場合は、新規データベースの各接続先データベースで、新規データベースについてDBMS_APPLY_ADMパッケージのSET_GLOBAL_INSTANTIATION_SCNプロシージャを実行します。

    2. 新規データベースにスキーマが存在し、インスタンス化中に、またはその後に共有DDLの変更によって、そのスキーマに1つ以上の表が作成される場合は、新規データベースの各接続先データベースで、そのスキーマについてDBMS_APPLY_ADMパッケージのSET_SCHEMA_INSTANTIATION_SCNプロシージャを実行します。この操作は、この種のスキーマごとに行います。

    手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

    これらのプロシージャは、新規データベースで表がインスタンス化される前に実行し、新規データベースではローカルの取得プロセスまたは同期取得がすでに構成されているため、インスタンス化中に作成される表ごとにSET_TABLE_INSTANTIATION_SCNプロシージャを実行する必要はありません。新規データベースの接続先データベースとなる環境内の他のすべてのデータベースで、その表ごとにインスタンス化SCNが自動的に設定されます。

    新規データベースがソース・データベースでない場合は、この手順を実行せずに次の手順に進んでください。

  2. 新規データベースでエクスポート/インポートを使用して共有オブジェクトをインスタンス化する場合の、ソース・データベースを1つ選択します。まず、共有オブジェクトのエクスポートを実行します。次に、新規データベースで共有オブジェクトのインポートを実行します。エクスポート/インポートの使用方法は、「Oracle Streamsレプリケーション環境でのオブジェクトのインスタンス化」および『Oracle Databaseユーティリティ』を参照してください。

    ソース・データベースでのデータベース・オブジェクトのエクスポート中、それらのデータベース・オブジェクトに対する変更は許可しないでください。接続先データベースでのデータベース・オブジェクトのインポート中、それらのデータベース・オブジェクトに対する変更は許可しないでください。

    FLASHBACK_SCNFLASHBACK_TIMEなどのエクスポート・パラメータを使用して、より厳密な一貫性レベルを指定できます。

  3. 手順2でインスタンス化のためのエクスポートを実行したソース・データベースを除き、新規データベースのソース・データベースごとに、新規データベースでインスタンス化SCNを設定します。これらのインスタンス化SCNの設定は必須です。また、ソース・データベースで行われ、そのデータベースの対応するSCNより後にコミットされる変更のみが、新規データベースで適用されます。

    ソース・データベースごとに、これらのインスタンス化SCNを次のいずれかの方法で設定できます。

    1. ソース・データベースでメタデータのみのエクスポートを実行し、そのメタデータを新規データベースでインポートします。このインポートによって、ソース・データベースに必須のインスタンス化SCNが、新規データベースで設定されます。この場合は、新規データベースの共有オブジェクトに、エクスポート時点でソース・データベースとの一貫性があることを確認してください。

      DML変更のみを共有する場合は、表レベルのエクスポート/インポートで十分です。DDL変更も共有する場合は、追加の考慮事項があります。メタデータのエクスポート/インポートを実行する方法の詳細は、「エクスポート/インポートを使用したインスタンス化SCNの設定」を参照してください。

    2. 新規データベースで、共有オブジェクトについてインスタンス化SCNを手動で設定します。新規データベースの共有オブジェクトに、対応するインスタンス化SCNの時点でソース・データベースとの一貫性があることを確認してください。手順については、「DBMS_APPLY_ADMパッケージを使用したインスタンス化SCNの設定」を参照してください。

  4. 競合が発生する可能性がある場合は、新規データベースで競合解消を構成します。手順については、「Oracle Streamsの競合検出および解消の管理」を参照してください。

  5. DBMS_APPLY_ADMパッケージのSTART_APPLYプロシージャを使用して、手順3で新規データベースに作成した適用プロセスを起動します。

  6. 手順4で他の各接続先データベースに作成した適用プロセスを起動します。新規データベースがソース・データベースでない場合は、この手順を実行しないでください。