複数ターゲット構成において、SP_OCT_REPLICATE_ALL_DDL パラメータによる DDL 複製を全てのターゲットに対して送信する場合は、
SP_ORD_SEND_DDL_TO_FIRST パラメータを 0 に設定してください。
具体的な例を挙げて説明します。
1. SP_OCT_REPLICATE_ALL_DDL = 1 を設定して 全ての DDL 文を複製します。
2. 以下の構成ファイルでアクティベートします。
datasource:o.orcl
expand sp1.% sp1.% target1@o.orcl2
expand sp1.% sp1.% target2@o.orcl2
3. ソース側で CREATE VIEW 文を実行します。
SQL> create view sp1.spview as select * from sp1.sptest;
KB:250814 の方法によって以下 Capture ログから SP_OCT_REPLICATE_ALL_DDL パラメータによって複製されていることが分かります。
======================================================
ocap_ddl 2019-04-04 10:27:18.253852 8212 367499104 User Name: "SP1" Status: Replicated
ocap_ddl 2019-04-04 10:27:18.253852 8212 367499104 DDL = create view sp1.spview as select * from sp1.sptest
ocap_ddl 2019-04-04 10:27:18.253852 8212 367499104 Oracle Time: 04/04/19 10:27:16 object=SP1.SPVIEW
======================================================
4. 構成ファイルで一番上に定義されている target1 のみ CREATE VIEW 文が複製されます。
5. SP_ORD_SEND_DDL_TO_FIRST パラメータを 0 に設定します。
sp_ctrl> set param SP_ORD_SEND_DDL_TO_FIRST 0
6. ソース側で CREATE VIEW 文を実行します。
SQL> create view sp1.spview2 as select * from sp1.sptest;
7. target1 と target2 の両方で CREATE VIEW が複製されます。
© ALL RIGHTS RESERVED. Feedback 利用規約 プライバシー Cookie Preference Center