Streamsパッケージのセットの1つであるDBMS_PROPAGATION_ADM
パッケージは、ソース・キューから宛先キューへの伝播を構成するための管理インタフェースを提供します。
関連項目: このパッケージおよび伝播の詳細は、『Oracle Streams概要および管理』および『Oracle Streamsレプリケーション管理者ガイド』を参照してください。 |
この章では、次の項目について説明します。
表92-1 DBMS_PROPAGATION_ADMパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
|
伝播のルール・セットを追加、変更または削除します。 |
|
伝播を作成し、その伝播のソース・キュー、宛先キューおよびルール・セットを指定します。 |
|
伝播を削除します。 |
|
伝播を開始します。 |
|
伝播を停止します。 |
注意: 特に指定がないかぎり、すべてのサブプログラムがコミットされます。 |
このプロシージャは、伝播のルール・セットを追加、変更または削除します。
構文
DBMS_PROPAGATION_ADM.ALTER_PROPAGATION( propagation_name IN VARCHAR2, rule_set_name IN VARCHAR2 DEFAULT NULL, remove_rule_set IN BOOLEAN DEFAULT FALSE, negative_rule_set_name IN VARCHAR2 DEFAULT NULL, remove_negative_rule_set IN BOOLEAN DEFAULT FALSE);
パラメータ
表92-2 ALTER_PROPAGATIONプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
変更する伝播の名前。既存の伝播名を指定する必要があります。所有者を指定しないでください。 |
|
伝播に使用するポジティブ・ルール・セット名。ポジティブ・ルール・セットには、伝播でメッセージを伝播するように指示するルールが含まれます。 ポジティブ・ルール・セットを伝播に使用する場合は、既存のルール・セットを 指定したルール・セットが存在しない場合は、エラーが戻されます。ルール・セットを作成し、そのルール・セットにルールを追加するには、
|
|
伝播のポジティブ・ルール・セットを削除し、ネガティブ・ルール・セットが伝播に存在する場合は、そのネガティブ・ルール・セットによって廃棄されなかった該当キュー内のメッセージすべてが、伝播によって伝播されます。
|
|
伝播に使用するネガティブ・ルール・セット名。ネガティブ・ルール・セットには、伝播でメッセージを廃棄するように指示するルールが含まれます。 ネガティブ・ルール・セットを伝播に使用する場合は、既存のルール・セットを 指定したルール・セットが存在しない場合は、エラーが戻されます。ルール・セットを作成し、そのルール・セットにルールを追加するには、
ポジティブ・ルール・セットとネガティブ・ルール・セットの両方を伝播に指定した場合は、常にネガティブ・ルール・セットが先に評価されます。 |
|
伝播のネガティブ・ルール・セットを削除し、ポジティブ・ルール・セットが伝播に存在する場合は、そのポジティブ・ルール・セットによって廃棄されなかった該当キュー内のメッセージすべてが、伝播によって伝播されます。
|
このプロシージャは伝播を作成し、その伝播のソース・キュー、宛先キューおよび任意のルール・セットを指定します。伝播によって、ローカル・ソース・キューのメッセージが宛先キューに伝播されます。宛先キューは、ソース・キューと同じデータベース内にある場合と、ない場合があります。
構文
DBMS_PROPAGATION_ADM.CREATE_PROPAGATION( propagation_name IN VARCHAR2, source_queue IN VARCHAR2, destination_queue IN VARCHAR2, destination_dblink IN VARCHAR2 DEFAULT NULL, rule_set_name IN VARCHAR2 DEFAULT NULL, negative_rule_set_name IN VARCHAR2 DEFAULT NULL, queue_to_queue IN BOOLEAN DEFAULT NULL, original_propagation_name IN VARCHAR2 DEFAULT NULL, auto_merge_threshold IN NUMBER DEFAULT NULL);
パラメータ
表92-3 CREATE_PROPAGATIONプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
作成する伝播の名前。 注意: |
|
ソース・キューの名前。 たとえば、 |
|
宛先キューの名前。 たとえば、 |
|
伝播で使用するデータベース・リンクの名前。データベース・リンクとは、ソース・キューが含まれているデータベースから宛先キューが含まれているデータベースへのリンクです。
注意: 接続修飾子は使用できません。 |
|
伝播に使用するポジティブ・ルール・セット名。ポジティブ・ルール・セットには、伝播でメッセージを伝播するように指示するルールが含まれます。 ポジティブ・ルール・セットを伝播に使用する場合は、既存のルール・セットを 指定したルール・セットが存在しない場合は、エラーが戻されます。ルール・セットを作成し、そのルール・セットにルールを追加するには、
|
|
伝播に使用するネガティブ・ルール・セット名。ネガティブ・ルール・セットには、伝播でメッセージを廃棄するように指示するルールが含まれます。 ネガティブ・ルール・セットを伝播に使用する場合は、既存のルール・セットを 指定したルール・セットが存在しない場合は、エラーが戻されます。ルール・セットを作成し、そのルール・セットにルールを追加するには、
ポジティブ・ルール・セットとネガティブ・ルール・セットの両方を伝播に指定した場合は、常にネガティブ・ルール・セットが先に評価されます。 |
|
関連項目: キューからキューへの伝播の詳細は、『Oracle Streams概要および管理』を参照してください。 |
|
作成中の伝播が、 作成中の伝播が分割操作およびマージ操作の一部ではない場合は、 |
|
次の両方の条件を満たす場合は、正数を指定します。
次のいずれかの条件を満たす場合は、
|
使用上の注意
このプロシージャは、伝播を開始します。また、伝播ジョブを作成する場合もあります。伝播ジョブを作成する場合は、伝播ジョブのデフォルト・スケジュールを確立します。各伝播ジョブはOracle Schedulerジョブです。Oracle Schedulerを使用して、伝播ジョブのスケジュールを調整できます。
ソース・キューを所有するユーザーが、メッセージを伝播するユーザーです。このユーザーには、メッセージを伝播するための権限が必要です。
関連項目:
|
このプロシージャは、伝播を削除し、ソース・キューで宛先キューへのすべてのメッセージを削除します。また、このプロシージャによって、ソース・キューから宛先キューへの伝播スケジュールも削除されます。
構文
DBMS_PROPAGATION_ADM.DROP_PROPAGATION( propagation_name IN VARCHAR2, drop_unused_rule_sets IN BOOLEAN DEFAULT FALSE);
パラメータ
表92-4 DROP_PROPAGATIONプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
削除する伝播の名前。既存の伝播名を指定する必要があります。所有者を指定しないでください。 |
|
|
使用上の注意
このプロシージャを使用して伝播を削除すると、DBMS_STREAMS_ADM
パッケージを使用して伝播に対して作成されたルールに関する情報が、Oracle Streamsルールのデータ・ディクショナリ・ビューから削除されます。そのルールが削除対象の伝播のすべてのルール・セットに存在しない場合でも、こうしたルールに関する情報は削除されます。
関連項目: Oracle Streamsデータ・ディクショナリ・ビューの詳細は、『Oracle Streams概要および管理』を参照してください。 |
Oracle Streamsルールのデータ・ディクショナリ・ビューは次のとおりです。
ALL_STREAMS_GLOBAL_RULES
DBA_STREAMS_GLOBAL_RULES
ALL_STREAMS_MESSAGE_RULES
DBA_STREAMS_MESSAGE_RULES
ALL_STREAMS_SCHEMA_RULES
DBA_STREAMS_SCHEMA_RULES
ALL_STREAMS_TABLE_RULES
DBA_STREAMS_TABLE_RULES
注意: 伝播を削除すると、その伝播で使用されるが、他の伝播では使用されない伝播ジョブも自動的に削除されます。 |
このプロシージャは、伝播を開始します。
構文
DBMS_PROPAGATION_ADM.START_PROPAGATION( propagation_name IN VARCHAR2);
パラメータ
表92-5 START_PROPAGATIONプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
開始する伝播の名前。既存の伝播名を指定する必要があります。所有者を指定しないでください。 |
使用上の注意
伝播ステータスは永続的に記録されます。したがって、ステータスがENABLED
の場合、伝播はデータベース・インスタンスの起動時に開始されます。
このプロシージャは、伝播を停止します。
構文
DBMS_PROPAGATION_ADM.STOP_PROPAGATION( propagation_name IN VARCHAR2, force IN BOOLEAN DEFAULT FALSE);
パラメータ
表92-6 STOP_PROPAGATIONプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
停止する伝播の名前。既存の伝播名を指定する必要があります。所有者を指定しないでください。 |
|
|
使用上の注意
伝播ステータスは永続的に記録されます。したがって、ステータスがDISABLED
またはABORTED
の場合、伝播はデータベース・インスタンスの起動時に開始されません。